scanf函式:
語法:scanf("格式化字串",位址列表);
例:scanf("%d",&int型別的變數);
int num;
scanf("%d",&num);
scanf使用注意
1.可以同時接收多個輸入:可以輸入的時候以空格區分
2.如果想改變他們的輸入方式,就在兩個格式化控制符之間加符號,那麼輸入的時候也必須按這個格式來輸入
3.最好不要輸入乙個數字後立刻接收輸入字元
4.如果想用兩句scanf來先接收乙個數字,再接收乙個字元,那麼為了防止字元吸收到回車或空格,我們可以在格式化控制符之前加乙個空格,或者把緩衝區裡的字元全部吸收掉
5.如果scanf需要接收乙個數字,那麼不管你按多少次回車或者空格,都沒用
scanf的原理:
1). 使用者從控制台輸入的資料是先儲存在1個叫做緩衝區地方
2). 當scanf函式準備為變數賦值的時候.先看看緩衝區中有沒有資料
如果緩衝區中沒有合適的資料 才會暫停程式讓使用者從控制台輸入
如果緩衝區中有合適的資料 直接將快取區中的資料拿出來賦值給變數
算數運算子:
+:跟數學一樣
-:跟數學一樣
*:跟數學一樣
/:如果兩個運算元都是整數,那麼結果一定是整數(就是數學中算得多少只取整數部分),如果運算元有乙個是浮點數,那麼結果一定是浮點數
%:就是取餘數,什麼叫餘數?除不盡,餘下的數就叫餘數。
取餘的正負性:只取決於左邊的那個運算元是正還是負
取餘不能用在浮點數
優先順序:
有括號先算括號,先乘除後加減
如果同級:從左往右依次運算
復合運算子:
+=:在原來的值的基礎上相加
-=:在原來的值的基礎上相減
*=:在原來的值的基礎上相乘
/=:在原來的值的基礎上相除
%=:在原來的值的基礎上取餘
例: int num = 10;
num += 12;
num %= 12;
自增和自減:
++和--
在原來的值的基礎上+1
不能對常量進行自增和自減
字首的自增(自減)以及字尾的自增(自減)
字首:先自增(自減)再參與運算
字尾:先用原來的值參與運算,後自增(自減)
補充:同時宣告多個變數,用逗號隔開
int num1,num2; //int num1; int num2;
int num3=10,num4=20;
逗號表示式:
語法:(表示式1,表示式2,………………表示式n);
語義:從左往右每個表示式都會執行,但是總體的表示式的值,只取最後乙個表示式的結果
逗號運算子
在c語言中,多個表示式可以用逗號分開,其中用逗號分開的表示式的值分別結算,但整個表示式的值是最後乙個表示式的值。假設b 2,c 7,d 5,a1 b,c d 3 a2 b,c d 3 對於第一行 有三個表示式,用逗號分開,所以最終的值應該是最後乙個表示式的值,也就是d 3,為8,所以a1 8。對於第...
逗號運算子
c 語言中,逗號 也可以是運算子,稱為逗號運算子 comma operator 逗號運算子可以把兩個以上 包含兩個 的表示式連線成乙個表示式,稱為逗號表示式。其一般形式為 子表示式1,子表示式2,子表示式n 例如 a b,c b,c 逗號運算子的優先順序是所有運算子中級別最低的,通常配合 for 迴...
逗號運算子
逗號運算子是指在c語言中,多個表示式可以用逗號分開,其中用逗號分開的表示式的值分別結算,但整個表示式的值是最後乙個表示式的值。例子 int a1,a2,b 2,c 7,d 5 第1行 a1 b,c d 3 第2行 a2 b,c d 3 第3行 對於給a1賦值的 有三個表示式,用逗號分開,所以最終的值...