编程总结2

6.1循环控制结构与循环语句
  在for和while语句之后一般没有分号,有分号表示循环体,就是分号之前的内容,空语句表示寻欢填的什么都不做。
while(i<100);
i++;
死循环
for(i=0;i<100;i++);
printf("%d",i);
用于延时
6.3嵌套循环
1.执行嵌套循环时,先由外层循环进入内层循环,并在内层循环终止之后接着执行外层循环,再有外层循环进入内层循环,当外层循环全部终止时,程序结束。
2.每次循环之前都要将变量赋值,编写累加求和程序的关键在于寻找累加项的构成规律。
3.为了避免混乱,潜逃循环的内外层的循环控制变量不一样同名。
4.对于双重嵌套循环,循环总次数等于内外层循环次数的乘积。
6.4条件控制的循环
1.条件控制循环用while和do while比较方便。
2.在c中,rand()头文件中需要有stdlib.h标准c规定RAND-MAX都值不大于双字节整数的最大值32767.若想改变计算机生成数的取值范围,有以下方法:
(1)利用求余运算rand()%b将函数。rand()生成的随机数变化到[0,b-1]之间。
(2)利用rand()%b+a将随机数取值范围平移到[a,a+b-1]之间。
6.5流程的转移控制
1.goto语句。,break语句,contitue语句和return语句是c语言中用于控制流程转移的跳转语句。
2.go to语句的作用是在不需要任何条件的情况下直接使程序跳转到该语句标号所标示的语句去执行,通常情况下go to语句与if语句联合使用.
3.break语句除用于退出switch结构外,还可用于由while、do while.和for组成的循环语句的循环体中。
4.break语句与go to语句的本质区别在于后者可以任意方向跳转,而前者只能限定流程跳转到循环语句之后的第一条语句中去执行,因此可以避免流程混乱问题。
5.contitue语句只结束本次循环的执行。
6.在嵌套循环情况,break语句和contitue语句支队包含它们的最内层循环语句起作用,不能用。break语句跳出多重循环,但go to 语句可以。
7.标准函数exit(code),作用是终止整个程序的执行。当code值为0时,表示程序正常退出,当code值为非0时,表示程序出现某种错误后退出。
8,在界定while和for语句后面的复合语句时,要加上花括号。while语句紧跟括号后不应加分号,而do-while语句后括号应加分号。
解决问题:
1.输入n个数时,将数据表示为a,应首先输入n,然后for循环,循环体内再输入a。
2.判断一个四位数x有多少位是7时,可以从最高位开始判断,若从最高位开始,那么if一句中条件可以依次为x/1000%10==7,(x/100)%10==7,(x%100)/10==7,x%10==7.若从最低位开始, 则可以为x%10==7,然后一次将x除以10取余,直至最高位。
3.对于画图形问题,要找出行与列、行与每行符号个数放置位置的关系。如画矩形中,因此,用嵌套循环,对行列进行循环控制。循环体内输入对应位置的字符或空格,若使用printf输出,最后需输出"\n",对于"送分题"这道题,要找出特殊位置(容易用行列关系表示的位置)对应输出字符,其他使用"else"即可。
4.对于k个3问题,将数据除十取余后应在大于零的条件下进行。
5.数字反转问题表达式很巧妙,将一个数N进行反转,对另一个数M赋值为0,当N!=0时,进行M=M*10+N%10,N/=10循环,最后的M为N反转后的数。
6.当一个程序所需条件较多时,要学会将条件分类,做到不重不漏。一旦少一个或重复时,就会出现。wrong answer.例如敲7问题,要求输出7和7的倍数以及包含7的所有数.在思考这个问题时,可先求7的倍数,即满足条件。i%7==0,然后思考每位数需满足的条件,可以从最低位开始,也可以从最高位开始分析。
7.对于一个循环体,要是其循环次数尽可能少一些,例如,求两个数m,n最大公因数时,对for()中条件爱可以从i=max(m,n)开始,依次减1,而求最小公倍数应从i=min(m,n)开始,依次加1。一,由于最大公因数和最小公倍数都只有一个,为了使程序更好,所以在for循环最后需要有break,如果没有的话,则会输出所有的公因数和公倍数。
8.输出时一定要加上endl,否则,在一些题上将因缺此而出现"presentation error".
9.对于一个很复杂的题目,有时可使用嵌套循环将所有情况表示出来,暴力求解有时也是个好办法。
10. 学完循环结构,才知道什么是真正的编程,他需要弄清哥哥变量之间的逻辑关系,大循环时的循环次数。关于循环的一些题大多不像以前一样简单,不会看一眼就会有思路,就能写出来,一定要去分析,动手去写。

猜你喜欢

转载自blog.csdn.net/weixin_43641974/article/details/84894439