java常見邏輯練習題,用三杯水、加法、異或交換兩個數
題目:用三杯水、加法、異或交換兩個數
分析:三杯水原理交換直接用第三個變數交換即可,即:
三杯水
int a = 4;
int b = 5;
int c = a;
a = b;
b = c;
System.out.println(a);
System.out.println(b);
列印臺顯示結果
5
4
加法
int a = 4; int b = 5; a = a + b; b = a - b; //此時等同於a(a+b)-b a = a - b; //此時等同於a(a+b)-b(a)//此時b已由上面的式子轉換為了a System.out.println(a); System.out.println(b);
列印臺顯示結果
5
4
異或^
int a = 4;
int b = 5;
a = a ^ b;
b = a ^ b; //此時等同於a(a^b)-b
a = a ^ b; //此時等同於a(a^b)-b(a)//此時b已由上面的式子轉換為了a
System.out.println(a);
System.out.println(b);
列印臺顯示結果
5
4
相關推薦
java常見邏輯練習題,用三杯水、加法、異或交換兩個數
題目:用三杯水、加法、異或交換兩個數 分析:三杯水原理交換直接用第三個變數交換即可,即: 三杯水 int a = 4; int b = 5; int c = a; a = b; b = c; System.out.println(a);
java常見邏輯練習題求出100內的素數個數,平切打印出當前數是什麼?(素數:只能夠被自己和1整除的數 )
題目:求出100內的素數個數,平切打印出當前數是什麼?(素數:只能夠被自己和1整除的數 ) 分析:要求100內的素數個數,我們首先要拿到1-100的所有數字,用for迴圈遍歷1-100的所有數字,即: 第一步 for (int i = 1; i < 100
java常見邏輯練習題求 整數 1~100之間的 求出 含有 7 或者7的倍數的數一共有多少 分別是什麼?
題目:求 整數 1~100之間的 求出 含有 7 或者7的倍數的數一共有多少 分別是什麼? 拿道題讀題後分析: 第一步 既然要求出數 1~100之間的有 7 或者7的倍數的數一共有多少 ,那麼我們首先要做的就是遍歷1-100之間的所有數,即: for (int
java常見邏輯練習題求出10內的階乘?
題目:求出10內的階乘? 分析:首先要求出10內的階乘就要先將10以內的數遍歷出來,那麼我們用for迴圈遍歷即: for (int i = 1; i <= 10; i++) { } 然後我們需要明白階乘的意思是什麼,舉個例子:4的階乘為1x2x3
java常見邏輯練習題打印出所有的"水仙花數"
題目:打印出所有的"水仙花數",所謂"水仙花數"是指一個三位數,其各位數字立方和等於該數本身。 分析,首先想要找出水仙花數先要遍歷出所有的三位數,即: 第一步 for (int i = 100; i <= 999; i++) { } 接下來,想要判斷這個
用異或進行兩個數交換的陷阱
我們都知道可用通過異或運算交換兩個數,而不需要任何的中間變數。 如下面: void exchange(int &a, int &b) { a ^= b; b ^= a; a ^= b; } 然而,這裡面卻存在著一個非常隱蔽的陷阱。通
用異或交換兩個整數的陷阱
前面我們談到了,可用通過異或運算交換兩個數,而不需要任何的中間變數。 如下面: void exchange(int&a,int&b) { a ^=b; b ^=a; a ^=b; } 然而,這裡面卻存在著一個非常隱蔽的陷阱。通常我們
巨集定義開關和debug printf,巨集定義使用異或交換兩數
1、巨集定義開關和debug printf #define DEBUG_PRINT 1 #ifdef DEBUG_PRINT #define DEBUG(format, ...) printf("FILE: "__FILE__", LINE: %d: "format"\
第三百七十六節,Django+Xadmin打造上線標準的在線教育平臺—創建用戶操作app,在models.py文件生成5張表,用戶咨詢表、課程評論表、用戶收藏表、用戶消息表、用戶學習表
十六 _id 收藏 創建用戶 在線教育 名稱 image images sage 第三百七十六節,Django+Xadmin打造上線標準的在線教育平臺—創建用戶操作app,在models.py文件生成5張表,用戶咨詢表、課程評論表、用戶收藏表、用戶消息表、用戶學習表 創
求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。
解題思路: 一元二次方程 ax²+bx+c=0(a≠0) 其求根依據判定式△的取值為三種( △=b²-4ac ) 1. △>0,方程有兩個不相等的實數根; x1=[-b+√(△)]/2a; //(
北京少兒程式設計,用三分鐘開闊孩子未來的視野與機遇
說到少兒程式設計,對於我們來說好像有點兒陌生又或者是不可思議,前幾年當我們在國內提到少兒程式設計教育時,總會有這樣那樣的誤解和偏見,看看下面這些觀點,是不是很熟悉呢? 小孩子電腦都不會用,怎麼學程式設計啊?學習負擔那麼重,不要增加孩子的負擔。孩子以後又不做程式設計師
JAVA 陣列轉字串,用符號分割
String[] ary = {"abc", "123", "45"}; 方法一: 需要引入Apache Commons元件中的個commons-lang.jar包: String str1=StringUtils.join(ary, ","); 方法二: String.
Java程式邏輯控制,Java迴圈
程式邏輯,主要分為三種 順序結構:由前到後執行,每個語句只執行一次 分支結構:通過判斷條件,進行選擇分支 迴圈結構:迴圈程式語句 分支結構 if else 1. if(布林表示式){ 條件成立執行的語句 } 2. if
1079: C語言程式設計教程(第三版)課後習題8.2---求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。【兩種方法】
題目描述 求方程 的根,用三個函式分別求當b^2-4ac大於0、等於0、和小於0時的根,並輸出結果。從主函式輸入a、b、c的值。 輸入 a b c 輸出 x1=? x2=? 樣例輸入 4
Java精確計算,用BigDecimal來處理int、double、float等之間的計算
1、先看我遇到的問題:計算3乘以4.9的值,正常來說答案應該是14.7,但是如果你用下面的程式碼執行完之後答案是: package com.acconsys.plugin.test; public class DoubleTest { public static v
php不用第三個變量,交換兩個數的值
php 變量 //字符串版本 結合使用substr,strlen兩個方法實現$a="a";$b="b";echo ‘交換前 $a:‘.$a.‘,$b:‘.$b.‘<br />‘;$a.=$b;$b=substr($a,0,(strlen($a)-strlen($b)));$a=substr
移動端rem布局,用戶調整手機字體大小或瀏覽器字體大小後導致頁面布局出錯問題
nts set add orien lar med urn bsp jsse 一、用戶修改手機字體設置大小,影響App裏打開的web頁面。手機字體設置大小,影響App的頁面。Android的可以通過webview配置webview.getSettings().setText
Java原始碼分析——java.lang.reflect反射包解析(三) 動態代理、Proxy類、WeakCache類
代理模式是一個經常被各種框架使用的模式,比如Spring AOP、Mybatis中就經常用到,當一個類訪問另外一個類困難時,可通過一個代理類來間接訪問,在Java中,為了保證程式的簡單性,代理類與目標類需要實現相同的介面。也就是說代理模式起
二叉樹的前序遍歷建樹及其輸出所有結點,用佇列找父親結點,用遞迴找出度為1的結點個數
實現功能 1.結點類的釋放 2.前序遍歷建樹 3.前序遍歷輸出二叉樹結點 4.用佇列實現查詢給定結點的父親結點 5.查詢二叉樹中出度為1的結點的個數 Note:關於樹的輸入,是一維陣列的形式輸入且是前序序列形式建樹需要以#號代表該出無子樹 比如以下陣列
C:函式交換兩個數,常見錯誤
函式交換兩個數,常見錯誤 問題:提供倆個數,利用函式實現交換。 出現的錯誤情況如下: 第一種情況:值傳遞;(如函式Swap_err01) 第二種情況:沒解引用;(如