目录
循环结构
(一)do-while 语句:
do
{
语句;
}while (表达式);
while 语句和do...while语句的对比:
1. do-while 循环 至少会被一次
2. 逻辑顺序不同
while - 先判断 后执行
do-while - 先执行 后判断
(二)for 循环 :
C语言中的 for 语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况,它完全可以代替 while 语句。
for 语句的一般形式为
for (表达式1;表达式2;表达式3)
{
循环体语句;
}
注:for 循环的三个表达式都可以省略,但是对应的循环要素不能省,表达式2 省略 ---表示循环条件永远为真 。
例:从键盘输入一个数,判断是不是素数。
1 #include<stdio.h>
2
3 int main(void)
4 {
5 int num,i;
6 scanf("%d",&num);
7
8 for(i = 2;i < num;i++)
9 {
10 if(num%i == 0)
11 {
12 break;
13 }
14 }
15
16 if(i < num)
17 {
18 printf("%d is not a prime num!\n",num);
19 }else
20 {
21 printf("%d is a prime num!\n",num);
22 }
23
24 return 0;
25 }
break 语句和 continue 语句
(一)break 语句
8 for(i = 2;i < num;i++)
9 {
10 if(num%i == 0)
11 {
12 break;
13 }
14 }
当语句执行到 break 语句时,将跳出循环体,执行接下来的语句。
(二)continue 语句
continue其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。
8 for(i = 0;i < 3;++i)
9 {
10 printf("i = %d\n",i);
11 for(j = 0;j < 3;++j)
12 {
13 printf("j = %d\n",j);
14
15 if(j == 1)
16 break;
17 }
18
19 if(i%2 == 0)
20 continue;
21
22 printf("i = %d j =%d\n",i,j);
23 }
当满足条件执行 if(i%2 == 0) continue; 时,将不执行 printf("i = %d j =%d\n",i,j); ,而是回到循环判断,开始下一次的循环。
continue 语句和 break 语句的区别: continue 语句只结束本次循环,而不是终止整个循环的执行。而 break 语句则是结束整个循环过程,不再判断执行循环的条件是否成立。
数组
(一)一维数组
整型 int/short/long/long long
浮点型 float / double /long double
字符型 char
(2)数组名 --- 名字 (标识符)
用来代表这个数组
起名字规则 与 之前变量名起名规则一致
1. c99标准之后,数组长度 可以是变量,也可以是可变长数组,但是不能初始化。
2. 数组长度,可以省略,但是必须要有初始化,编译器要根据初始化的值,来推算实 际的长度 。(int len = sizeof(a)/sizeof(int); 可用于计算实际长度。
一维数组的引用:
一维数组的初始化:
数组特点:
连续性 --- 数组空间是一片连续内存空间
有序性 --- 数组的元素挨个存放
单一性 --- 数组元素类型是同一类型