《计算机编程语言—C语言》第50卷:for循环、循环的嵌套 - 知识点训练卷 湖南省计算机应用考纲百套卷

2025-06-17
| 2份
| 18页
| 189人阅读
| 3人下载

内容正文:

编写说明:《计算机应用考纲百套卷》依据湖南省《计算机应用类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,共62份,第二部分是常考题训练卷,共18份,第三个部分是专业综合训练卷,参考历年计算机应用类专业真题试卷,编写了20份。 本试卷是《计算机应用考纲百套卷》的第50卷,知识点:①for循环;②循环的嵌套; 湖南省《计算机应用考纲百套卷》 《计算机编程语言-C语言》 第50卷: for循环、循环的嵌套 知识点训练卷 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共20小题,每小题2分,共40分) 1. 若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “ ------------”) ;的正确说法是( ) A.循环体只执行一次 B.死循环 C.循环体一次也不执行 D.输出----------- 【答案】C 2. 以下不正确的描述是( ) A. 使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成 B. while循环是先判断表达式后执行循环体语句 C. do-while和for循环均是先执行循环体语句,后判断表达式 D. for、while、do-while循环中的循环体均可以由空语句构成 【答案】D 3.for语句中的表达式可以部分或全部省略,但两个( )不可省略,但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。 A.! B., C.; D.: 【答案】C 4.执行语句:for(i=1;i++<4;);后,变量i的值( ) A.3 B.4 C.5 D.语句存在语法错误 【答案】C 5.设i,j已定义为int类型,则以下程序段中,内循环体的总执行次数是( ) for(j=0;j<4;j++) for(i=0;i<4;i++)…… A.20 B.16 C.30 D.0 【答案】B 6.下列for循环语句正确的是( ) A.for(i=1;i<10;i++) B.for(i=1;i<=10;i++) C.for(i=10;i>=1;i--) D.以上选项均正确 【答案】D 7.下列用于输出数字1到5的正确for循环语句是( ) A.for(int i=0;i<5;i++)printf(“%d”,i+1); B.for(int i=1;i<=5;i++)printf(“%d”,i); C.for(int i=1;i<5;i++)printf(“%d”,i); D.for(int i=0;i<=5;i++)printf(“%d”,i); 【答案】B 8.若i,j都为整型变量,执行语句:for(i=0,j=3;i<=10;i++);j++;printf(“%d”,j);的运行结果是( ) A.14 B.24 C.34 D.4 【答案】D 9.下列选项中,有关for循环的描述中正确的一项是( ) A.for循环只能用于循环次数已经确定的情况 B.for循环先执行循环体语句,后判断表达式 C.在for循环中,不能使用break语句跳出循环体 D.for循环的循环体语句中,可以包含多条语句,但必须使用花括号括起来 【答案】D 10.下列程序段的内循环体要执行的次数是( ) for(i=5;i>0;i++) for(j=0;j<4;j++) {……} A.15 B.16 C.20 D.25 【答案】C 11.下列程序的运行结果是( ) main() {int i,sum; for(i=1;i<5;i++) sum+=i; printf(“%d”,sum);} A.15 B.14 C.0 D.不确定 【答案】D。sum未赋值。 12.下列语句中,能够正确输出26个英文字母的是( ) A.char a;for(a=’a’;a<=’z’;)printf(“%c”,++a); B.char a;for(a=’a’;a<=’z’;)printf(“%c”,a); C.char a;for(a=’a’;a<=’z’;)printf(“%c”,a++); D.char a;for(a=’a’;a<=’z’;printf(“%c”,a)); 【答案】C 13.执行以下程序段的输出结果是( ) main() {int i; for(i=2;i==0;) printf("%d",i--);getch();} A.0 B.1 C.2 D.无输出 【答案】D。存在未赋值的变量。 14.执行以下程序段的输出结果是( ) main() {char a,b; for(a='0',b='4';a<b;a++,b--) printf("%c%c",a,b); printf(" ");getch();} A.0134 B.0123 C.1234 D.0413 【答案】D 15.执行以下程序段的输出结果是( ) main() {int x,y; for(y=1;y<10;) y=((x=3*y,x+1),x-1); printf("x=%d,y=%d",x,y);getch();} A.x=27,y=27 B.x=15,y=14 C.x=12,y=13 D.x=y=27 【答案】B 16.执行:for(m=1;m++<=5;);语句后,变量m的值为( ) A.5 B.6 C.7 D.8 【答案】C 17.执行以下程序段的输出结果是( ) main() {int x=10,y=10,i; for(i=0;x>8;y=++i) printf("%d,%d ",x- -,y);getch();} A.10,10 9,1 B.10,1 9,2 C.9,8 7,6 D.10,9 9,0 【答案】A 18.执行以下程序段的运行结果是( ) main() {int i; for(i=0; i<3; i++) switch(i) {case 1:printf("%d",i); case 2: printf("%d", i); default : printf("%d", i);}getch();} A.011122 B.120 C.012020 D.012 【答案】A 19.执行以下程序段的运行结果是( ) main() {int s,i; for(s=0,i=1;i<3;i++,s+=i); printf("%d ",s);getch();} A.0 B.3 C.5 D.6 【答案】C 20.下列程序段的功能是( ) int main() {int i; for (i = 2; i <= 100; i += 2) printf("%d ", i);} A.输出1至100之间的所有奇数 B.输出1至100之间的所有偶数 C.输出1至100之间的所有数 D.程序中有语法错误 【答案】B 二、程序运行结果题(本题共6题,每题4分,共24分) 21. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int i, sum = 0; for (i=1;i<=100;i++) sum+=i; printf("%d ", sum);getch();} 【答案】5050 22. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> int main() {int i=0,j=0; do{ printf("%d;",i); for(j=i;j<10;j++){ printf("%d;",j);} printf(" "); }while(++i<1); getch();} 【答案】0;0;1;2;3;4;5;6;7;8;9; 23. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> int main() {int x=1,b=2; for(;x<=4;x++) {b++; if(b>10)break; else b++; }printf("%d",b);getch();} 【答案】10 24. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int s=0,i; for(i=1;i<=10;i++) {if(i==5) continue; s=s+i;} printf("%d",s);getch();} 【答案】50 25. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int i,j; for(i=0;i<10;i++) {j=i*10+6; if(j%3!=0)continue; printf("%d ",j);}getch();} 【答案】6 36 66 96 26. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int t=0,s=0,i; for(i=1;i<=4;i++) {t=i+t*10; s=s+t;} printf("s=%d ",s);getch();} 【答案】s=1370 三、程序填空题(本题共2题,每空4分,共24分) 27.国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后的两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去,当连续n天每天收到n枚金币后,骑士会在之后的连续n+1天里,每天收到n+1枚金币。若程序中的a为7,那么骑士这七天里一共获得18枚金币(18=1+2+2+3+3+3+4+4+4+4)。请填空。 #include <stdio.h> #include<conio.h> main() {int count=1; int a,sum=0,i; scanf("%d",&a); for(i=1;i<=a;i++) {a=【1】; sum+=【2】; count++;} printf("%d",【3】); getch();} 【答案】①a-i ②count*count ③sum+a*count 28. 下列程序的功能是:输入一个正整数n,并输出一个n行的倒直角三角形,其中第i行包含n-i+1个星号。例如,如果输入的整数为5,则输出结果为图1所示。 图 1 #include<stdio.h> #include<conio.h> main() {int n,i,j; printf("请输入一个正整数n:"); scanf("%d",【1】); printf("倒直角三角形如下: "); for(i=n;i>=1;【2】) {for(j=1;【3】;j++) printf("*"); printf(" ");} getch();} 【答案】①&n ②i-- ③j<=i 四、程序改错题(本题共1题,每空4分,共12分) 29.下列程序的功能是:找出1至100之间的所有完数(6是一个完数,6=1+2+3)。程序中有两处错误,请改正。 L1 #include<stdio.h> L2 #include<conio.h> L3 main() L4 {int num,sum,i; L5 printf("1到100之间的完数有: "); L6 for(num=1;num<=100;num++) L7 {sum=1; L8 for(i=1;i<num;i++) L9 {if(num/i==0) L10 {sum+=i;}} L11 if(sum=num) L12 {printf("%d ",num);}} L13 printf(" "); L14 getch();} 【答案】 ①L7 {sum=0; ②L9 {if(num%i==0) ③L11 if(sum==num) 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $$ 编写说明:《计算机应用考纲百套卷》依据湖南省《计算机应用类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,共62份,第二部分是常考题训练卷,共18份,第三个部分是专业综合训练卷,参考历年计算机应用类专业真题试卷,编写了20份。 本试卷是《计算机应用考纲百套卷》的第50卷,知识点:①for循环;②循环的嵌套; 湖南省《计算机应用考纲百套卷》 《计算机编程语言-C语言》 第50卷: for循环、循环的嵌套 知识点训练卷 时间:45分钟 总分:100分 班级___________ 姓名__________ 学号__________ 成绩________ 一、选择题(共20小题,每小题2分,共40分) 1. 若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “ ------------”) ;的正确说法是( ) A.循环体只执行一次 B.死循环 C.循环体一次也不执行 D.输出----------- 2. 以下不正确的描述是( ) A. 使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成 B. while循环是先判断表达式后执行循环体语句 C. do-while和for循环均是先执行循环体语句,后判断表达式 D. for、while、do-while循环中的循环体均可以由空语句构成 3.for语句中的表达式可以部分或全部省略,但两个( )不可省略,但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。 A.! B., C.; D.: 4.执行语句:for(i=1;i++<4;);后,变量i的值( ) A.3 B.4 C.5 D.语句存在语法错误 5.设i,j已定义为int类型,则以下程序段中,内循环体的总执行次数是( ) for(j=0;j<4;j++) for(i=0;i<4;i++)…… A.20 B.16 C.30 D.0 6.下列for循环语句正确的是( ) A.for(i=1;i<10;i++) B.for(i=1;i<=10;i++) C.for(i=10;i>=1;i--) D.以上选项均正确 7.下列用于输出数字1到5的正确for循环语句是( ) A.for(int i=0;i<5;i++)printf(“%d”,i+1); B.for(int i=1;i<=5;i++)printf(“%d”,i); C.for(int i=1;i<5;i++)printf(“%d”,i); D.for(int i=0;i<=5;i++)printf(“%d”,i); 8.若i,j都为整型变量,执行语句:for(i=0,j=3;i<=10;i++);j++;printf(“%d”,j);的运行结果是( ) A.14 B.24 C.34 D.4 9.下列选项中,有关for循环的描述中正确的一项是( ) A.for循环只能用于循环次数已经确定的情况 B.for循环先执行循环体语句,后判断表达式 C.在for循环中,不能使用break语句跳出循环体 D.for循环的循环体语句中,可以包含多条语句,但必须使用花括号括起来 10.下列程序段的内循环体要执行的次数是( ) for(i=5;i>0;i++) for(j=0;j<4;j++) {……} A.15 B.16 C.20 D.25 11.下列程序的运行结果是( ) main() {int i,sum; for(i=1;i<5;i++) sum+=i; printf(“%d”,sum);} A.15 B.14 C.0 D.不确定 12.下列语句中,能够正确输出26个英文字母的是( ) A.char a;for(a=’a’;a<=’z’;)printf(“%c”,++a); B.char a;for(a=’a’;a<=’z’;)printf(“%c”,a); C.char a;for(a=’a’;a<=’z’;)printf(“%c”,a++); D.char a;for(a=’a’;a<=’z’;printf(“%c”,a)); 13.执行以下程序段的输出结果是( ) main() {int i; for(i=2;i==0;) printf("%d",i--);getch();} A.0 B.1 C.2 D.无输出 14.执行以下程序段的输出结果是( ) main() {char a,b; for(a='0',b='4';a<b;a++,b--) printf("%c%c",a,b); printf(" ");getch();} A.0134 B.0123 C.1234 D.0413 15.执行以下程序段的输出结果是( ) main() {int x,y; for(y=1;y<10;) y=((x=3*y,x+1),x-1); printf("x=%d,y=%d",x,y);getch();} A.x=27,y=27 B.x=15,y=14 C.x=12,y=13 D.x=y=27 16.执行:for(m=1;m++<=5;);语句后,变量m的值为( ) A.5 B.6 C.7 D.8 17.执行以下程序段的输出结果是( ) main() {int x=10,y=10,i; for(i=0;x>8;y=++i) printf("%d,%d ",x- -,y);getch();} A.10,10 9,1 B.10,1 9,2 C.9,8 7,6 D.10,9 9,0 18.执行以下程序段的运行结果是( ) main() {int i; for(i=0; i<3; i++) switch(i) {case 1:printf("%d",i); case 2: printf("%d", i); default : printf("%d", i);}getch();} A.011122 B.120 C.012020 D.012 19.执行以下程序段的运行结果是( ) main() {int s,i; for(s=0,i=1;i<3;i++,s+=i); printf("%d ",s);getch();} A.0 B.3 C.5 D.6 20.下列程序段的功能是( ) int main() {int i; for (i = 2; i <= 100; i += 2) printf("%d ", i);} A.输出1至100之间的所有奇数 B.输出1至100之间的所有偶数 C.输出1至100之间的所有数 D.程序中有语法错误 二、程序运行结果题(本题共6题,每题4分,共24分) 21. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int i, sum = 0; for (i=1;i<=100;i++) sum+=i; printf("%d ", sum);getch();} 22. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> int main() {int i=0,j=0; do{ printf("%d;",i); for(j=i;j<10;j++){ printf("%d;",j);} printf(" "); }while(++i<1); getch();} 23. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> int main() {int x=1,b=2; for(;x<=4;x++) {b++; if(b>10)break; else b++; }printf("%d",b);getch();} 24. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int s=0,i; for(i=1;i<=10;i++) {if(i==5) continue; s=s+i;} printf("%d",s);getch();} 25. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int i,j; for(i=0;i<10;i++) {j=i*10+6; if(j%3!=0)continue; printf("%d ",j);}getch();} 26. 下列程序的运行结果是 #include<stdio.h> #include<conio.h> main() {int t=0,s=0,i; for(i=1;i<=4;i++) {t=i+t*10; s=s+t;} printf("s=%d ",s);getch();} 三、程序填空题(本题共2题,每空4分,共24分) 27.国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后的两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去,当连续n天每天收到n枚金币后,骑士会在之后的连续n+1天里,每天收到n+1枚金币。若程序中的a为7,那么骑士这七天里一共获得18枚金币(18=1+2+2+3+3+3+4+4+4+4)。请填空。 #include <stdio.h> #include<conio.h> main() {int count=1; int a,sum=0,i; scanf("%d",&a); for(i=1;i<=a;i++) {a=【1】; sum+=【2】; count++;} printf("%d",【3】); getch();} 28. 下列程序的功能是:输入一个正整数n,并输出一个n行的倒直角三角形,其中第i行包含n-i+1个星号。例如,如果输入的整数为5,则输出结果为图1所示。 图 1 #include<stdio.h> #include<conio.h> main() {int n,i,j; printf("请输入一个正整数n:"); scanf("%d",【1】); printf("倒直角三角形如下: "); for(i=n;i>=1;【2】) {for(j=1;【3】;j++) printf("*"); printf(" ");} getch();} 四、程序改错题(本题共1题,每空4分,共12分) 29.下列程序的功能是:找出1至100之间的所有完数(6是一个完数,6=1+2+3)。程序中有两处错误,请改正。 L1 #include<stdio.h> L2 #include<conio.h> L3 main() L4 {int num,sum,i; L5 printf("1到100之间的完数有: "); L6 for(num=1;num<=100;num++) L7 {sum=1; L8 for(i=1;i<num;i++) L9 {if(num/i==0) L10 {sum+=i;}} L11 if(sum=num) L12 {printf("%d ",num);}} L13 printf(" "); L14 getch();} 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $$

资源预览图

《计算机编程语言—C语言》第50卷:for循环、循环的嵌套 - 知识点训练卷   湖南省计算机应用考纲百套卷
1
《计算机编程语言—C语言》第50卷:for循环、循环的嵌套 - 知识点训练卷   湖南省计算机应用考纲百套卷
2
《计算机编程语言—C语言》第50卷:for循环、循环的嵌套 - 知识点训练卷   湖南省计算机应用考纲百套卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。