上三角:
流程图如下:
i=1 NO i<=9? YES J=1 NO J<=9 YES J++ NO YES i>j? Printf(“\\t”) Printf(“%d*%d=%d\\t”,I,j, i+j) 注意:只需控制 i , j 使得在某些位置置空或者为“%d*%d=%d”,i,j,i*j即可。
要有模块化的思想,先考虑行,再考虑列,最后再考虑每个元素。
I++
for(表达式1;表达式2;表达式3)
(1)先执行表达式1(循环中只执行一次),且表达式1可提前到for()语句之前,但其后的“;”不能少。
(2)表达式2为真时执行循环体语句组,为假时结束循环并执行循环体外语句组。 (3)计算表达式3并返回第(2)步。
3.习题5-1小孩吃梨问题; 程序代码如下:
运行结果:
流程图如下:
4.求100-1000中所有能表示成立方的书,水仙花数。
sum=2*(sum+1); Printf(“the pears has %d\\n”,sum) YES NO I=17 Sum=1 i>0? I - -
5.把由键盘输入的数列(1,3,5,7,9...)按相反的顺序(如...9,7,5,3,1)输出。
程序如下:
#include
int arr[5]={1,3,5,7,9},*pt_arr; clrscr();
pt_arr=&arr[4]; for(;pt_arr>=arr;pt_arr--) {
printf(\ \ }
return 0; }
运行结果如下:
五:收获
在本次实验中基本掌握了几种常见的循环结构for, while, do while,熟悉了不同循环类型之间的转换方法和循环结构的嵌套。此外了解到描绘流程图能极大的方便对整个程序的编写,并已掌握其基本画法。