1 / 10
文档名称:

C语言循环知识点总结.doc

格式:doc   大小:330KB   页数:10页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言循环知识点总结.doc

上传人:天天湖人 2022/11/21 文件大小:330 KB

下载得到文件列表

C语言循环知识点总结.doc

相关文档

文档介绍

文档介绍:该【C语言循环知识点总结 】是由【天天湖人】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【C语言循环知识点总结 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。循环
特色:在知足特定条件的状况下,频频履行某程序段。
While循环
While循环的格式是这样的:while(条件表达式){语句代码},意思是知足括号内的条件时,履行花括号内的语句代码。或许更专业一点来说,当括号内的条件表达式返回值为真时,履行花括号内的代码,向来到条件表达式的返回值为假时,跳出循环。
While循环很简单出现死循环这类状况,就是因为忘掉写了“增量”这个东西。
.\n");
.\n");
count=count+1;
//
//此处,++在前在后都不影响打印次数。
//
////循环增量
count++;
////++count;
}
一些例子:
练****br/>打印1~100
intnum=0;
while(num<100){
printf("%d\n",(num+1));
num++;
}
用while打印能被7整除的1~100之间的数。
intnum=1;
while(num<=100){
//
if(num%7==0){
printf("%d\t",num);
}
num++;
}
用while循环打印出1~100之间各位为7的数。
intnum=0;
//
while(num<100){
if(num%10==7){
printf("%d\t",(num));
}
num++;
}
用while循环打印出1~100之间十位为7的数。num/10==7
intnum=0;
while(num<100){
if(num/10==7){
printf("%d\t",num);
}
num++;
}
Do-while循环
与while不一样的只有一个地方,就是先履行一遍代码,再进行判断。也就是说,不论你while的条件表达式成不建立,返回值为不为假,我都履行一遍循环体的代码。
dowhile
do{
//printf("起码履行一次,不论后边的判断条件是真仍是假");
//}while(1);//;分号不可以丢
随机数arc4random()
产生随机数的方法,arc4random()能够产生int范围内的随意一个随机数,包含有正数和负数,为何会出现负数呢?因为,在储存的时候,生成的数的最高位的数字为1,此时,会以为这个1是符号位的负,所以会出现负数。这时,我们应当把这些状况防止掉,在输出以前,用unsigned来定义一个变量来接收产出的随机数;在输出的过程中,占位符不再用%d,而是用%u来取代。
另一个值得注意的是,随机数产生的时候,数字会很大,而我们在代码过程中,不需要这么大的数,此时,想要把这个数减小,能够用取余的方法来限制。
随机数arc4random(),
用%u来打印,表示无符号。
//因为随机函数给的值很大,我们采纳取余的方法,使值变小。取余的随机数的
范围就是,0~被除数-1
//printf("%u\t",arc4random()%10);//打印只有0~10的数
在产生一个随机数的时候,能够让它在固定的区间内产生,那么就会用到这个公
式:
取某区间[a,b]的数,用公式:arc4random()%(b-a+1)+a
假如规定在负空间生成随机数,那么就将公式改成:
/arc4random()%(b-a+1)-a
一些例子:
用户输入一个N,用while打印N个随机数(10~30)
intnum=0;
intcount=0;
printf("输入一个数:");
scanf("%d",&num);
printf("产生%d随机数为:\n\t",num);
while(count<num){
//
////unsigned申明一个无符号int种类。
unsignedunum=(arc4random()%((30-10+1)+10));
printf("第%d个数为:%d\t",(count+1),unum);
count++;
}
输入一个数,用while打印n个随机数(30~70),找出随机数中最大值。
intnum=0;
printf("输入一个数:\n");
scanf("%d",&num);
intcount=0;
intmax=0;
while(count<num){
unsignedunum=(arc4random()%((70-30+1)+30));
printf("第%d个数为:%d\n",(count+1),unum);
//
if(max<unum){
max=unum;
}
count++;
}
printf("\n");
printf("最大的数为:%d\n",max);
Break和continue
这两个重点字在开发过程中常常遇到,他们的差别以下:
break:在某个循环的时候,用上break,意思就是停止这个循环,不再履行这个循环,我要跳出这个循环。
continue:在某个循环的时候,在过程顶用上continue,意思就是,我在的这个循环还在运转,可是我不运转这一次的循环,我要跳到下一次的循环去,可是仍是在这个循环里,没有跳出去,不过不履行此次罢了。
循环变量
intcount=0;
while(count<10){
count++;
//
if(count==3){
////结束本次循环
continue;
/*
//
输出结果:
//
//
第1

//
第2

//
第4

//
第5

//
第6

//
第7

//
第8

//
第9

//
第10
天*/
}
if(count==5){
////结束循环
break;
/*
//
输出结果:
//
//
第1

//
第2

//
第4
天*/
}
printf("第%d天\n",count);
}
for循环
for循环和while差不多,可是是将条件和增量,循环变量都一同放在了小括号里。
值得注意的是:while与for的比较时,for的一个利处
对比于while循环:while中存在浪费内存的状况,因为循环变量在
while循环外边,直到它所在的花括号结束,才开释内存。而for循环的循环变量在for循环结束后,即开释。
for循环的履行过程是这样的:
for

(①inti=0③循环体

;②i<100;

④i++){
}
在运转到本处时,先进行①赋初值,而后判断条件,知足则跳进循环体履行代码③,履行循环体代码结束后,对i进行自增④i++,而后进行②判断,履行③,自增四。。。这样循环下去。
//for循环
intcount=0;
while(count<5){
printf("\n我是while循环。。。");
count++;
}
//for(循环变量;条件;增量){循环体}
for(inti=0;i<5;i++){
printf("\n我是for循环哦。。。");
}
练****br/>打印0~100
for(inti=0;i<=100;i++){
printf("%d\t",i);
}
打印1~100
//对比于while循环:while中存在浪费内存的状况,因为循环变量在while循环
外边,直到它所在的花括号结束,才开释内存。
//而for循环的循环变量在for循环结束后,即开释。
for(intj=0;j<100;j++){
printf("%d\t",(j+1));
}
打印***
for(inti=0;i<3;i++){
printf("*");
}
循环嵌套
当我们发现,一个循环自己又要循环多次时,用循环嵌套:循环里有循环。
打印
/*
***
***
***
*/
两层for循环
外层for:负责控制行
for(intj=0;j<3;j++){
//内层for负责每行打印多少个
for(inti=0;i<3;i++){
printf("*");
}
printf("\n");
}
打印
/*
1
2
23
*/
//里边的个数跟行数同样,(第一行有一个,第二行有2个。。。)那么只需i<=
就能够了。
for(intj=1;j<=3;j++){
for(inti=1;i<=j;i++){
printf("%d",i);
}
printf("\n");
}
打印乘法口诀表
for(inti=0;i<9;i++){
////列
for(intj=0;j<=i;j++){
printf("%d*%d=%d\t",j+1,i+1,(j+1)*(i+1));
}
printf("\n");
}
三维数组合:
三个for循环
百位1~9
for(inti=1;i<=9;i++){
//十位0~9
for(intj=0;j<=9;j++){
//个位0~9
for(intk=0;k<=9;k++){
printf("%d\n",i*100+j*10+k);
}
}
}