sizeof運算符
用途: 獲取操作數(shù)占用內(nèi)存大小的字節(jié)數(shù)单寂。
使用形式: sizeof(操作數(shù)) ? ? ? ? ? ? //操作數(shù): 常量 變量 帶括號時可以是數(shù)據(jù)類型再芋。
使用方法:
1)用于數(shù)據(jù)類型
sizeof使用形式:sizeof(type) 數(shù)據(jù)類型必須用括號括住迹淌。 如sizeof(int)。
2)用于常量
int size = sizeof(1); size = sizeof(1.1); size = sizeof(1.1f);
3)用于變量
size = sizeof(a);
在C語言中 0 表示假 非0的都是真举农。
1)雖然C編譯在給出邏輯運算值時,以“1”代表“真”,“0 ”代表“假”虑凛。
但反過來在判斷一個量是為“真”還是為“假”時, 以“0”代表“假”,以非“0”的數(shù)值作為“真”蔫浆。
例如:
由于5和3均為非“0”因此5&&3的值為“真”,即為1殖属。
又如:5||0的值為“真”,即為1。
生成隨機數(shù)
#include// arc4random_uniform(n) 0~n-1之間的隨機的整數(shù)
arc4random_uniform(3);
//0 1 2
switch語句使用
switch(表達式A){
case 常量表達式1:
語句1;
break;
case 常量表達式2:
語句2;
break;
default:
語句n+1;
break;
}
if語句
1)if(條件) return 0;
執(zhí)行完return 程序?qū)⒉粫傧蛳吕^續(xù)執(zhí)行瓦盛。
2)if(1) if(-1) 等永真式洗显。 If(0) 永假
3)if語句作用域
If(條件){ 語句塊;
定義變量a;
}變量 a 能不能用
4)if語句可以省略花括號嗎?
某些情況下可以 但是最好不要省略。 如果有多條語句不能省略原环。
do while語句
1)do...while語句的語義是:
當執(zhí)行到do-while循環(huán)時,首先會執(zhí)行一遍循環(huán)體中的語句挠唆。接著判斷while中的條件,如果條 件成立,就執(zhí)行循環(huán)體中的語句。然后再次判斷條件,重復上述過程,直到條件不成立就結(jié)束 while循環(huán)
2)do-while循環(huán)的特點:
不管while中的條件是否成立,循環(huán)體中的語句至少會被執(zhí)行一遍
int i=0;
do{
i++;
} while(i<10);
while語句
1嘱吗、死循環(huán):任何數(shù)值都真假性
while(-1){
printf("死循環(huán)\n")玄组;
}
2、while 后如果只有一條語句它可以省略大括號
3谒麦、while小括號后面不可以直接寫分號
4俄讹、作用域:內(nèi)部代碼塊中定義的變量不可以在外邊代碼塊中訪問
5、作用域紊亂
while(1<3)
int num = 5弄匕;
6颅悉、最簡單死循環(huán)
while(1);
for循環(huán)語句
1沽瞭、表達式省略(三個表達式都可以省略)
如:for(; ;)
語句相當于while(1) 語句,即不設(shè)初值,不判斷條件(認為表達式2為真值),循環(huán)變量不增 值迁匠。無終止地執(zhí)行循環(huán)體。
2驹溃、for循環(huán)的嵌套 for循環(huán)可以嵌套 而且常用 嵌套格式
break,continue語句
break :可使程序終止循環(huán)而執(zhí)行循環(huán)后面的語句, 通常break語句總是與while語句聯(lián)在一起,即滿足條件時便跳出循環(huán)城丧。
continue:的作用是跳過循環(huán)體中剩余的語句而繼續(xù)下一次。用來加速循環(huán)豌鹤。
注意:
1) 在多層循環(huán)中,一個break語句只向外跳一層亡哄。
2)break語句對if-else的條件語句不起作用;
99乘法表
#include <stdio.h>
int main(int argc, const char * argv[]) {
int i,j;
for (i=1; i<10; i++) {
for (j=1; j<=i; j++) {
printf("%d*%d=%d? ",j,i,i*j);
}
printf("\n");
}
printf("Hello, World!\n");
return 0;
}
水仙花數(shù)
#include <stdio.h>
int main(int argc, const char * argv[]) {
int a,b,c,j,i;
for (i=10; i<1000; i++) {
a =i/100;
b =i%100/10;
c =i%10;
if (i==a*a*a+b*b*b+c*c*c) {
printf("水仙花數(shù)是:%d\n",i);
j++;
}
}
printf("共%d個數(shù)\n",j);
return 0;
}