1. 预测结果并上机验证 #include
{ int x=1;
填空位置 人工填空语句 实验填空语句 for(;;)
{if(x>10) _1_;
(1) break x++;
if(x%2) _2_;
(2) continue printf(“%d”,x);} }
(五)循环嵌套
1. 预测结果并上机验证
人工分析结果 实验运行结果 32 人工分析结果 实验运行结果 17 人工分析结果 实验运行结果 21
main() { int i,j,m=0; for(i=2;i<=10;i+=4) for(j=3;j<=15;j+=4) m++; printf(“%d\\n”,m);} 2. 预测结果并上机验证
main() {int i,j; for(i=1;i<4;i++) {for(j=i;j<4;j++) printf(“%d*%d=%d”,i,j,i*j); printf(“\\n”);} } (六)常见题型
12 人工分析结果 实验运行结果 1*1=1 1*2=2 1*3=3 2*2=4 2*3=6 3*3=9 1.两段程序均完成求和运算: s=1-1/3+1/5-1/7+….+1/99,阅读程序,完成填空
main()
{int flag; float i,s;
for(i=1,s=0,flag=1;i<=99;i+=2) { s=s+_____1______; flag=-flag;} printf(\
main() { float n,s;
for(s=0,n=1;n<=50;n++) {s=s+_______2________;} printf(\}
填空位置 人工填空语句 (1) (2)
22
实验填空语句 1/i pow(n+1)*1/(2*n-1)
2.完成计算。数列表达式s=1+
12+
13+
14+?+
1n,当n=10时,求s的近似值。已知程序
段中有两处错误,由注释语句/**********found**********/提示下一条语句有错误,请修改程序中的错误并记录程序运行结果。
#include
/**********found**********/ for(n=1,n<=10,n++) /**********found**********/ s=s+1/n; printf(\}
修改程序中的错误并记录程序运行结果。 错误位置 (1) (2) 正确语句形式 实验运行结果 for(n=1;n<=10;n++) s=s+1.0/n 3. 求3~150之间的所有素数。 #include
{int s=0,i,n,flag; for(i=3;i<=150;i++)
{flag=0; /*语句功能:(1)*/
for(n=2;(2);(3)) /*表达式功能:判断某个数是否是素数,给出判断区间*/ if(i%n==0)
{flag=1; break;} if(flag==0) s=s+i; }
printf(\
23
填空位置 1 2 3 整。
main() {int i,j;
人工填空语句 实验填空语句 实验运行结果 设置标识量,判断被测试数是否为素数 n<=sqrt(i) n++ 4.以下程序的功能是输出100以内能被3整除且个位数为6的所有整数,请填空补充完 for(i=0;_______________;i++) {j=i*10+6;
if(_______________) continue; printf(“%d”,j);} } 填空位置 1 2
5. 编程实现九九乘法表。 main()
{ int i,j;
for(i=1;i<=9;i++) { for(j=1;j<=i;j++)
printf(“%d*%d=%d”,j,i,i*j); printf(“\\n”); } }
24
人工填空语句 实验填空语句 实验运行结果 i<10或i<=9 i%3
实验5 函数定义、调用与编译预处理 班 级 专 业 所用软件 学 号 姓 名 计算机号 实 验 室 成绩评定 教师签名 5.1 实验目的
1.掌握定义函数的方法。
2.掌握函数实参与形参的对应关系,以及“值传递”的方式。 3.了解函数的嵌套调用。
4.掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。 5.理解宏的概念,掌握宏定义。 6.了解文件包含的概念。
5.2 实验预习
1.函数的概念、定义格式、声明格式、调用规则及调用过程中数据传递方法过程,函
数的嵌套调用和递归调用。
2.宏定义和文件包含等编译预处理指令。
5.3 实验任务
1. 预测结果并上机验证
#include
25
人工分析结果 实验运行结果 31 人工分析结果 实验运行结果 5 7