sizeof运算符
用途: 获取操作数占用内存大小的字节数。
使用形式: sizeof(操作数) //操作数: 常量 变量 带括号时可以是数据类型。
使用方法:
1)用于数据类型
sizeof使用形式:sizeof(type) 数据类型必须用括号括住。 如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”的数值作为“真”。
例如:
由于5和3均为非“0”因此5&&3的值为“真”,即为1。
又如:5||0的值为“真”,即为1。
生成随机数
#include// arc4random_uniform(n) 0~n-1之间的随机的整数
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;
执行完return 程序将不会再向下继续执行。
2)if(1) if(-1) 等永真式。 If(0) 永假
3)if语句作用域
If(条件){ 语句块;
定义变量a;
}变量 a 能不能用
4)if语句可以省略花括号吗?
某些情况下可以 但是最好不要省略。 如果有多条语句不能省略。
do while语句
1)do...while语句的语义是:
当执行到do-while循环时,首先会执行一遍循环体中的语句。接着判断while中的条件,如果条 件成立,就执行循环体中的语句。然后再次判断条件,重复上述过程,直到条件不成立就结束 while循环
2)do-while循环的特点:
不管while中的条件是否成立,循环体中的语句至少会被执行一遍
int i=0;
do{
i++;
} while(i<10);
while语句
1、死循环:任何数值都真假性
while(-1){
printf("死循环\n");
}
2、while 后如果只有一条语句它可以省略大括号
3、while小括号后面不可以直接写分号
4、作用域:内部代码块中定义的变量不可以在外边代码块中访问
5、作用域紊乱
while(1<3)
int num = 5;
6、最简单死循环
while(1);
for循环语句
1、表达式省略(三个表达式都可以省略)
如:for(; ;)
语句相当于while(1) 语句,即不设初值,不判断条件(认为表达式2为真值),循环变量不增 值。无终止地执行循环体。
2、for循环的嵌套 for循环可以嵌套 而且常用 嵌套格式
break,continue语句
break :可使程序终止循环而执行循环后面的语句, 通常break语句总是与while语句联在一起,即满足条件时便跳出循环。
continue:的作用是跳过循环体中剩余的语句而继续下一次。用来加速循环。
注意:
1) 在多层循环中,一个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;
}
水仙花数
#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("水仙花数是:%d\n",i);
j++;
}
}
printf("共%d个数\n",j);
return 0;
}