C语言循环结构测习题带答案

合集下载

循环结构测试

循环结构测试

C语言之循环结构测试一、选择题(1)有以下程序段int n,t=1,s=0;scanf("%d",&n);do{ s=s+t; t=t-2; }while (t!=n);为使此程序段不陷入死循环,从键盘输入的数据应该是A)任意正奇数B)任意负偶数C)任意正偶数D)任意负奇数(2)设变量已正确定义,则以下能正确计算f = n!的程序段是A)f=0; B)f=1;for(i=1;i<=n;i++) f*=i; for(i=1;i<n;i++) f*=i;C)f=1; D)f=1;for(i=n;i>1;i++) f*=i; for(i=n;i>=2;i--) f*=i;(3)有以下程序main(){ int k=5,n=0;while(k>0){ switch(k){ default : break;case 1 : n+=k;case 2 :case 3 : n+=k;}k--;}printf("%d\n",n);}程序运行后的输出结果是A)0B)4C)6D)7(4)有以下程序main()int a=1,b;for(b=1;b<=10;b++){if(a>=8) break;if(a%2==1) { a+=5; continue;}a-=3;}printf("%d\n",b);}程序运行后的输出结果是A)3B)4C)5D)6(5) 有以下程序main (){ int s=0,a=1,n;scanf("%d",&n);do{ s+=1; a=a-2; }while(a!=n);printf("%d\n",s);}若要使程序的输出值为2,则应该从键盘给n输入的值是A) -1B) -3C) -5D) 0(6) 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0) s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是A) s=a+b;B) s=a+c;C) s=s+c;D) s=b+c;(7) 有以下程序main(){ int k=4,n=4;{ n++;if(n%3!=0) continue;k--; }printf("%d,%d\n",k,n);}程序运行后的输出结果是A) 1,1B) 2,2C) 3,3D) 4,4(8) 要求以下程序的功能是计算:main (){ int n; float s;s=1.0;for(n=10;n>1;n--)s=s+1/n;print("%6.4f\n",s);}程序运行后输出结果错误,导致错误结果的程序行是A) s=1.0;B) for(n=10;n>1;n--)C) s=s+1/n;D) printf("%6.4f/n",s);(9)有以下程序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);}}执行后输出结果是A) 011122B) 012C) 012020D) 120(10)有以下程序{ int i=0,s=0;do{if(i%2){i++;continue;}i++;s +=i;}while(i<7);printf("%d\n",s);}执行后输出结果是A) 16B) 12C) 28D) 21(11) 以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){ int n,k;float score ,sum,ave;sum=0.0;for(n=1;n<=10;n++){ for(k=1;k<=4;k++){ scanf(“%f”,&score); sum+=score;}ave=sum/4.0;printf(“NO%d:%f\n”,n,ave);}}上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案C循环结构程序设计试题以及参考答案实验内容:1.编程:输出200以内所有能被7整除的数。

#includemain(){int i;for(i=1;i<200;i++)if(i%7==0)printf("%4d",i);}2. 编程:求出1 ~ 1000之间能被13整除的最⼤的那个数。

#includemain(){int i,max=0;for(i=1;i<1000;i++)if(i%13==0){i>=max;max=i;}printf("max=%d",max);}3.编程:找出若⼲个⾮零数中的最⼩值m以及它们的平均值a。

要求:若⼲个数由键盘输⼊,每次输⼊⼀个赋给变量x,x为零时,结束输⼊。

#includemain(){int n,i,b,min,s=0;float a;printf("输⼊的数据的个数n=");scanf("%d",&n);for(i=1;i<=n;i++){scanf("%d",&b);if(i==1)min=b;if(min>b)min=b;s=s+b;}a=s*1.0/n;printf("min=%d\n a=%f",min,a); }4. 编程:求两个正整数m、n之间所有奇数之和x与偶数之和y。

要求:(1)m、n的值由键盘输⼊。

(2)输⼊时,允许⽤户随意先输⼊⼤的或⼩的整数。

#include main(){int m,n,i,x1=0,x2=0;printf("input m,n(mscanf("%d,%d",&m,&n);for(i=m;i<=n;i++){if (i%2==1)x1+=i;elsex2+=i;}printf("x1=%d,x2=%d\n",x1,x2);}5. 编程:计算π的近似值,π的计算公式为:要求:(1)n值由键盘输⼊。

C 循环结构23道题[含答案解析]

C  循环结构23道题[含答案解析]

题目、描述、输入、输出、输入样例、输出样例、测试输入、测试输出循环01:最大数写一个程序,可以输入一批正数,输入0时结束循环,并且输出最大的正数。

输入39 28 5 63 18 27 0输出63测试:输入153 26 963 28 75 90 156 0输出963#include<iostream>using namespace std;int main(){int i,max=0;cin>>i;while(i!=0){if(i>max)max=i;cin>>i;}cout<<max<<endl;return 0;}循环02:素数输入正数n,判断n是否为素数。

若为素数则输出1,否则输出0。

(提示:素数是指只可以被1和其本身整除的正数(1除外))输入10输出0输入7输出1测试:输入9输出0#include<iostream>using namespace std;int main(){int n,i,d;cin>>n;for(i=2;i<n;i++){d=n%i;if(n%i==0)break;}if(n==i)cout<<"1"<<endl;elsecout<<"0"<<endl;return 0;}循环03:数列求和输入一个正整数n,计算前n项之和:1+1/4+1/7+1/10..+1/(3*n-2)。

输入5输出1.56978输入4输出1.49286#include<iostream>using namespace std;int main(){int i,n;double s=0;cin>>n;for(i=1;i<=n;i++)s+=1.0/(3*i-2);cout<<s<<endl;return 0;}循环04:西瓜卖几天n个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完?说明:当西瓜个数为奇数时,卖一半为一半的整数,如当西瓜个数为5时,卖一半为卖2个。

C语言循环结构练习题带答案.doc

C语言循环结构练习题带答案.doc

第 5 章循环结构程序设计练习题1.单项选择题( 1)语句 while (!e);中的条件!e等价于A。

A. e==0B. e!=1C. e!=0D. ~e( 2)下面有关for循环的正确描述是D。

A. for循环只能用于循环次数已经确定的情况B. for循环是先执行循环体语句,后判定表达式C. 在 for循环中,不能用break 语句跳出循环体D. for循环体语句中,可以包含多条语句,但要用花括号括起来(3)C语言中D。

A.不能使用do-while语句构成的循环B. do-while 语句构成的循环必须用break 语句才能退出C. do-while 语句构成的循环,当while 语句中的表达式值为非零时结束循环D. do-while 语句构成的循环,当while 语句中的表达式值为零时结束循环( 4) C 语言中 while 和 do-while 循环的主要区别是A 。

A. do-while的循环体至少无条件执行一次B. while的循环控制条件比do-while的循环控制条件严格C. do-while允许从外部转到循环体内D. do-while的循环体不能是复合语句( 5)以下程序段C。

int x=-1;do{x=x*x;}while (!x);A.是死循环B. 循环执行二次C. 循环执行一次D. 有语法错误( 6)下列语句段中不是死循环的是__C__。

A.i=100;while (1){i=i%100+1;if (i==20) break;}B.for (i=1;;i++)sum=sum+1;C.k=0;do{++k;} while (k<=0);D.s=3379;while (s++%2+3%2)s++;( 7)与以下程序段等价的是__A__。

while (a){if (b) continue;c;}A.while (a)B.while (c){ if (!b) c; }{ if (!b) break; c; }C. while (c)D. while (a){ if (b) c; }{ if (b) break; c; }( 8)以下程序的输出结果是_B___。

广技师C语言复习题4. 练习(循环结构)(有答案)

广技师C语言复习题4. 练习(循环结构)(有答案)

一、选择题1. 设有如下程序段,则下面描述正确的是int k=10;while (k=0)k=k—1;A.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次2. 下面程序段的运行结果是a=1; b=2; c=2;while(a<b<c) {t=a; a=b; b=t; c--;}pirntf(“%d, %d, %d”,a,b,c);A.1,2,0 B.2,1,0 C.1,2,1 D.2,1,13。

下面程序段的运行结果是。

int n=0;while(n〈=2)n++;printf(“%d”,n);A.2 B.3 C.4 D.有语法错误4。

设有如下程序段,则描述正确的是。

t=0;while (printf(“*”)){t++;if(t<3)break;}A.其中循环控制表达式与0等价B.其中循环控制表达式与‘0’等价C.其中循环控制表达式是不合法的D.以上说法都不对5。

下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对等数时结束循环,请选择填空.#include<stdio.h〉int main(){int a,b,t;scanf(”%d%d",&a,&b);while(){if(a〉b) {t=a;a=b;b=t;}printf("%d,%d\n”,a,b);scanf("%d%d”,&a,&b);}return 0;A.!a=b B.a!=b C.a==b D.a=b8. 下面程序的功能是在输入的一系列正整数中求出最大者,输入0结束循环,请选择填空.#include〈stdio.h>int main(){int a,max=0;scanf(”%d”,&a);while( ){if(max〈a)max=a;scanf("%d”,&a);}printf(”%d\n",max);return 0;}A.!a=0 B.a!=0 C.a= =0 D.a=09。

C语言程序设计:循环结构程序设计单元测试与答案

C语言程序设计:循环结构程序设计单元测试与答案

一、单选题1、下面程序的运行结果是 ( )。

#include <stdio.h>int main( ){int i=5;while(i>0);printf("%d",i--);return 0;}A.5B.死循环C.0D.-1正确答案:B2、关于下面程序段,正确的是()。

int k=10;while(!k)k--;A.循环体执行1次B.循环体执行10次C.循环体一次也不执行D.死循环正确答案:C3、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int x=3;do{printf("%3d",x-=2);}while(!(--x));return 0;}A.1 -2B.死循环C.10D.1正确答案:A4、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int i=10;while(i-->0);printf("%d ",i);return 0;}A.10B.0C.10987654321D.-1正确答案:D5、已定义int j; 下面程序段的输出结果是()。

for(j=7;j<10;j++)printf("%d",j);A.91011B.8910C.789D.无结果正确答案:C6、下面程序的输出结果是()。

#include <stdio.h>int main( ){int i,j,s=0;for(j=1,i=7;j<=i;j++,i--)s=s+i+j;printf("%d",s);return 0;}A.死循环B.28C.0D.32正确答案:D二、判断题1、while循环语句至少无条件执行一次循环体。

正确答案:×2、for循环语句只能用于循环次数已经确定的情况。

循环结构程序设计练习题内含答案

循环结构程序设计练习题内含答案

第三单元循环结构练习题选择题:1、有以下程序执行后的输出结果是( D )。

main( ){ int i,s=0; for(i=1;i<10;i+=2)s+=i+1;printf("%d\n",s);}A.自然数 1~9的累加和B.自然数 1~10 的累加和C.自然数 1~9中的奇数之和D.自然数 1~10 中的偶数之和2、以下关于 for 语句的说法不正确的是( A )。

A. for循环只能用于循环次数已经确定的情况B. for循环是先判断表达式,后执行循环体语句C. for循环中,可以用 break 跳出循环体D. for循环体语句中,可以保含多条语句,但要用花括号括起来3、若 i和 k 都是 int 类型变量,有以下 for语句for(i=0,k=-1;k=1;k++) printf("*****\n");下面关于语句执行情况的叙述中正确的是(d)。

A. 循环体执行两次B.循环体执行一次C.循环体一次也不执行D. 构成无限循环4、以下程序程序的执行后的输出结果是(c)。

main(){int i,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++) printf(“%d”,t[2 -i][i]);}A.753B.357C.369D.7515、以下程序运行后的输出结果是( A )。

void fun(char*s){ while(*s){ if(*s%2==0)printf(“%c”,*s);s++;}}main(){ char a[]={“good”};fun( a) ;printf(“ n”);}注意:字母 a 的 ASCⅡ码值为 97A.dB.goC.godD.good6、已知 int t=0 ; while ( t=1 ){...}则以下叙述正确的是( B)。

A)循环控制表达式的值为 0B)循环控制表达式的值为 1C)循环控制表达式不合法D)以上说法都不对7、设有以下程序段 Bint x=0,s=0;while (!x!=0 ) s+=++x;printf ( "%d",s );则A)运行程序段后输出0B)运行程序段后输出 1C)程序段中的控制表达式是非法的D)程序段执行无限次8、设 i ,j ,k 均为 int型变量,则执行完下面的 for 语句后, k 的值为( C)。

2021年C语言考试循环结构训练习题库及答案(精品)

2021年C语言考试循环结构训练习题库及答案(精品)

2021年C语言考试循环结构训练习题库及答案(精品)1 选择题1.以下程序的输出结果是( )。

main(){ int n=4;while (n--)printf(〞%d〞,--n);}A.20B.31C.321D.2102.以下程序的输出结果是( )。

main(){int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d",x--,y);}A.10192B.9876C.10990D.1010913.当执行以下程序段时。

x=-1;{x=x*x;}while (!x);A.循环体将执行一次B.循环体将执行两次C.循环体将执行无数多次D.系统将提示有语法错误4.执行以下程序后输出的结果是()。

main(){ int y=10;do{y--;}while(--y);printf("%d\n",y--);}A.-1B.1C.8D.05.下面程序的输出结果是()。

main(){ int x=3,y=6,a=0;while (x++!=(y-=1)){a+=1;if (y<x) break;}printf("x=%d,y=%d,a=%d\n",x,y,a);A.x=4,y=4,a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=1 6.若i,j已定义为int类型,则以下程序段中内循环的总的执行次数是()。

for (i=5;i;i--)for (j=0;j<4;j++){…}A.20B.24C.25D.307.请读程序:#include<stdio.h>main(){int x=1,y=0,a=0,b=0;switch(x){case 1:switch(y){case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;}printf("a=%d,b=%d\n",a,b);上面程序的输出结果是()。

循环结构测试(带答案)

循环结构测试(带答案)

循环结构测试一、选择题(2’*20)1. C语言的for语句中的表达式可以部分或全部省略,但两个( C )不可省略。

但当三个表达式均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。

A) <B) ++C) ;D) ,2. 下列程序的输出结果是( B )#include "stdio.h"main(){ int i=6;while(i- -)printf("%d",- -i);printf("\n");}A)531B)420C)654321D)死循3. 下面有关for循环的正确描述是( D )。

A) for循环只能用于循环次数已经确定的情况B) for循环是先执行循环体语句,后判定表达式C) 在for循环中,不能用break语句跳出循环体D) for循环体语句中,可以包含多条语句,但要用花括号括起来4.设有程序段int k=10;while(k=0) k=k-1;则下面描述正确的是( C )。

A) while 循环执行10次B) 循环是无限循环C) 循环体语句一次也不执行D) 循环体语句执行一次5.下列程序段的运行结果是( C )int n=0;while(n++<3);printf("%d",n)A. 2B. 3C. 4D. 以上都不对6.以下程序段的输出结果是( A ).main(){ int i=5;for ( ;i<=15; ){ i++;if (i%4==0) printf("%d ",i);else continue;}}A. 8 12 16B. 8 12C. 12 16D. 87.以下不是无限循环的语句为( A )。

A) for(y=0,x=1;x>++y;x=i++) i=x;B) for( ; ;x++=i);C) while(1){x++;}D) for(i=10; ; i--) sum+=i;8.以下正确的描述是( B )。

C语言各章节单元测试题及答案——循环结构程序设计

C语言各章节单元测试题及答案——循环结构程序设计

第3章循环结构程序设计3.1 典型考试题剖析3.1.1 选择题【例1】若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c 均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是_______。

A)s=a+b; B)s=a+c; C)s=s+c; D)s=b+c;✧考点:本例考查for循环。

✧分析:初始赋值时s=a,那么s的值一定与a有关,C、D答案中不含a所以排除掉。

只用清楚for循环的次数,不管b以前的值为多少,第一次循环时b=1,当b>c时循环结束,那么显然s要加c次1。

所以s的值为a与c的和。

✧答案:B【例2】设x和y均为int型变量,则执行下面的循环后,y值为。

for(y=1,x=1;y<=50;y++){if(x>=10) break;if(x%2==1){x+=5;continue;}x-=3;}A) 2 B) 4 C) 6 D) 8✧考点:本例考查for循环中break和continue的用法,以及区别。

✧分析:break用在循环中,只能退出一层循环。

尤其是在嵌套循环中,只能退出它所在的那一层循环。

不能期望用break从最内层循环一下子退出最外层循环(可以用goto实现)。

continue语句只能用在循环中,它的作用是跳过其后面的语句,直接将控制转移到下一轮循环条件的测试。

语句“if(x>=10) break;”中的break只有当x>=10时,才会执行,并且跳出for循环;语句“x+=5;continue;”是每次执行完一次跳过其后面的语句,直接将控制转移到下一轮循环条件的测试for(y=1,x=1;y<=50;y++)中。

✧答案:C【例3】以下程序中,while循环的循环次数是_______。

main(){ int i=0;while(i<10){ if(i<1) continue;if(i==5) break;i++;}......}A) 1 B) 10 C) 6 D) 死循环,不能确定次数✧考点:本例考查while循环的用法,以及continue和break的分别。

(完整版)C语言循环习题答案

(完整版)C语言循环习题答案

循环习题集锦一.选择题1.for(i=0;i<10;i++);结束后,i 的值是;(10)A 9B 10C 11D 122.下面程序的循环次数是:(D)int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是(10)main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10 个整数,则在下画线处填入正确的数是:(c)for(i=0;i<= ;)printf(“%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序:(B)main(){ int i=10,j=0;do{ j=j+i;i--;}while(i>5);printf(“%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include “stdio.h”main(){ int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)break;elsek--;}k+=11;a+=k;}printf(“%d %d\n”,k,a);}则输出的结果是(C)A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:(D)A.do---while 语句构成的循环不能用其他语句构成的循环来代替。

B.do---while 语句构成的循环只能用break 语句退出。

C.用do---while 语句构成的循环,在while 后的表达式为非零时结束循环。

D.用do---while 语句构成的循环,在while 后的表达式为零时结束循环。

8.有如下程序:main(){ int x=3;do{printf(“%d”,x--);}while(!x);}该程序的执行结果是:(C)A 3 2 1B 2 1 0C 3D 29.若k 为整型变量,则下面while 循环执行的次数为:(A)k=10;while(k==0) k=k-1;A 0B 1C 10D 无限次10.下面有关for 循环的正确描述是(D)A.for 循环只能用于循环次数已经确定的情况B.for 循环是先执行循环体语句,后判断表达式C.在for 循环中,不能用break 语句跳出循环体。

c语言循环试题及答案

c语言循环试题及答案

c语言循环试题及答案C语言循环试题及答案1. 以下哪个选项是C语言中实现循环的关键字?A. switchB. caseC. whileD. do答案:C2. 写出一个使用for循环的程序段,计算1到100之间所有奇数的和。

```cint sum = 0;for(int i = 1; i <= 100; i += 2) {sum += i;}printf("The sum of odd numbers from 1 to 100 is %d", sum);```3. 以下哪个语句是正确的while循环的语法?A. while (condition) statementB. do statement while (condition)C. for (initialization; condition; iteration)D. if (condition) statement答案:A4. 假设有一个数组arr[10],以下哪个循环可以用来遍历这个数组?```cint i;for(i = 0; i < 10; i++) {// 遍历数组}```5. 如果要使用do-while循环打印出1到5的数字,以下哪个程序段是正确的?```cint i = 1;do {printf("%d ", i);i++;} while (i <= 5);```6. 以下哪个选项是break语句的正确用法?A. 用于跳出switch语句B. 用于跳出循环C. 用于进入循环D. 用于结束程序答案:B7. 写出一个使用while循环的程序段,计算1到10的乘积。

int product = 1;int i = 1;while(i <= 10) {product *= i;i++;}printf("The product of numbers from 1 to 10 is %d", product); ```8. 以下哪个选项是continue语句的正确用法?A. 跳过当前循环的剩余部分,开始下一次循环B. 用于跳出循环C. 用于进入循环D. 用于结束程序答案:A9. 假设有一个字符串str,以下哪个循环可以用来遍历这个字符串?```cchar str[] = "Hello";int i = 0;while(str[i] != '\0') {// 遍历字符串i++;}```10. 以下哪个程序段将打印出2到10之间的所有偶数?for(int i = 2; i <= 10; i += 2) { printf("%d ", i);}```。

循环结构、函数练习题及答案

循环结构、函数练习题及答案

循环结构、函数练习题1.以下由while构成的循环执行的次数是:A:无限次B:有语法错,不能执行C:一次也不执行D:执行一次int k=0;while(k=1) k++;2.以下程序的输出结果是:A:15 B:14 C:不确定 D:0{ int i,sum;for (i=1;i<6;i++) sum+=i;printf(“%d\n”);}3. 以下的for循环是:A:无限循环B:循环次数不定C:执行4次D:执行3次for(x=0,y=0;(y!=123)&&(x<4);x++);4. 以下程序段的执行结果是:A:输出321 B:输出23 C:不输出任何内容D:陷入死循环int x=23;do{ printf(“%d”,x ); }while (!x);5. 以下程序段输出的结果是:A:12 B:15 C:20 D:25int i, j,m=0;for(i=1;i<=15;i+=4)for (j=3;j<=19;j+=4) m++;p rintf (“%d\n”,m);6.设j为int型变量,则下面for循环语句的执行结果是:A:6 3 B:7 4 C:6 2 D:7 3for (j=10;j>3;j--){ if (j%3) j--;--j; --j;printf(“%d”,j);}7.若i, j已定义为int类型,则以下程序段中内循环体的执行次数是:A:20 B:24 C:25 D:30for (i=5;i;i--)for (j=0;j<4;j++)8.若x是int型变量,以下程序段的输出结果是:A:**3 B:##3 C:##3 D:**3##4##4 **4 **4##5 **5**5 ##5for(x=3;x<6;x++)printf( ( x%2 ) ? (**%d”) : (“##%d\n”), x);9.以下函数的类型是(1),函数的返回值是(2):(1)A:与参数x的类型相同B:void类型C:int 类型D:无法确定(2)A:0 B:1 C:无法确定D:出错fff (float x){ printf(“%d\n”,x*x); }10. 以下函数调用语句中,含有的实参个数是:A:3 B:4 C:5 D:有语法错func (rec1,rec2+1,(rec3,rec4));11. 以下叙述中正确的是:A:C语言程序总是从第一个定义的函数开始执行B:在C语言程序中,要调用的函数必须在main()函数中定义C:C语言程序中,只有int类型的函数可以未经说明而出现在调用之后D:C语言程序中的main()函数必须放在程序的开始部分12.以下叙述中正确的是:A:C语言程序的函数中必需有return语句B:在C语言程序中,函数的类型必须进行显式说明C:函数中,return语句必须放在函数体的最后D:C语言程序中,return语句中表达式的类型应该与函数的类型一致13.能正确表示数学公式根号下sin(x0)的C语言表达式是:A:sqrt(abs(sin(x*/180)))B:sqrt(sin(x*3.14/180)))C:sqrt(sin(x))D:sqrt(fabs(sin(x*3.14/180)))14.能求出a的3次方的表达式是:A:a^3 B:a**3 C:pow(a,3) D:power(a,3)15.以下正确的函数定义是:A:double sub(int x,y) B:double sub(int x,inty);{ double z; { double z;z=x-y; return z; } z=x-y; return z; }C: double sub(int x, int y) D:double sub(int x, int y) { z=x-y; { double z;return z; } z=x-y; return z; }16.C语言中,形参与实参之间的数据传递方式是:A:只能按值传递B:只能按地址传送C:由使用者指定传递方式D:既可以按值传送也可以按地址传送17.以下程序的输出结果是:A:9 8 B:8 9 C:6 6 D:以上三个都不对#include <math.h>void main(){ double a=-3.0,b=2;printf(“%3.0f,%3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b)); }循环结构、函数练习题答案1. A2. C3. C4. B5. C6. B7. A8. D9.C、C10. A11. C12. D13. D14. C15. D16. D17. B。

C语言循环结构练习测试题带参考答案

C语言循环结构练习测试题带参考答案

第5章循环结构程序设计5.1基本知识点✍while语句的使用格式和注意事项✍do-while语句的使用格式和注意事项✍for语句的使用格式和注意事项✍✍✍✍✍1.((C.(A.(A。

A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while的循环控制条件严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句(5)以下程序段C。

intx=-1;do{x=x*x;}while(!x);A.是死循环B.循环执行二次C.循环执行一次D.有语法错误(6)下列语句段中不是死循环的是__C__。

A.i=100;while(1){i=i%100+1;if(i==20)break;}B.for(i=1;;i++)sum=sum+1;C.{D.({}A.C.({{COUT<<i;}}A.45B.457810C.69D.678910 (9)以下程序的输出结果是__C__。

#include<stdio.h>main(){intnum=0;while(num<=2){num++;cout<<num<<endl;}}A.1B.1C.1D.12 2 23 34 2.填空题(1)以下程序的运行结果是__S=7__。

#include<stdio.h>main(){{{}}}({++i;}while(s<15);Cout<<i;}(3)以下程序的运行结果是____。

#include<stdio.h>main(){inti,j;for(i=4;i>=1;i--){cout<<"*";for(j=1;j<=4-i;j++)cout<<"*";cout<<"\n";}}输出结果:**********(4)以下程序的运行结果是____。

计算机二级C语言循环结构练习题答案

计算机二级C语言循环结构练习题答案
(5)输出a和b的值为1,1。
12.答案选择:C
考点:break语句
分析:break语句只能出现在switch结构和循环结构中。
13.答案选择:C
考点:while循环和break语句
分析:谨记break跳出的是真个循环,如果是循环的嵌套那么就跳出内循环。
(1) x=15,判断:x>10为真,执行x++后x的值为16,判断(x%3)为真,则继续执行if语句,x++后x的值为17,接着执行break语句,跳出循环。
②判断内循环2中的条件(b>a)为真,执行b-=a则b=4,a=7继续判断内循环2中的条件(b>a)为假。
(2)a=7,b=4,判断外循环中的条件(a!=b)为真,执行内循环:①判断内循环1中的条件(a>b)为真,执行a-=b则a=3,b=4继续判断内循环1中的条件(a>b)为假。
②判断内循环2中的条件(b>a)为真,执行b-=a则b=1,a=3继续判断内循环2中的条件(b>a)为假。
分析:switch(表达式)中的表达式和case 表达式一致,则执行表达式后面的语句,否则执行default后面的语句。case或是default后面的语句中如果有break语句则跳出switch结构。
(1)k=5,n=0,k>0为真,执行switch(5),因为没有case 5,因此执行default : break;跳出switch(5),执行switch(5)后面的语句,k--后k的值为4。
(3)i=2,s=3,因为永真,执行for语句,判断第一个if中的表达式(i==3||i==5)为假,不会执行continue。接着判断第二个if中的表达式(i==6)为假,不会执行break语句。继续执行i++后i的值为3,s+=i后s的值为6。

循环能力测试题及答案

循环能力测试题及答案

循环能力测试题及答案
一、单项选择题
1. 在循环结构中,以下哪个选项是正确的?
A. for循环只能用于数组
B. while循环不能用于字符串
C. do-while循环至少执行一次
D. 以上都不对
答案:C
2. 以下哪个循环结构在执行过程中,条件判断失败时会直接退出循环?
A. for循环
B. while循环
C. do-while循环
D. 以上都是
答案:B
二、填空题
1. 在编程中,____循环结构允许在循环体执行完毕后再进行条件判断。

答案:do-while
2. 如果需要对一个数组中的每个元素进行操作,通常会使用____循环
结构。

答案:for
三、判断题
1. 循环结构中的break语句可以用来立即退出循环。

答案:正确
2. 在循环中,continue语句的作用是跳过当前循环的剩余部分,直接进入下一次循环判断。

答案:正确
四、简答题
1. 请简述循环结构中while和do-while的主要区别。

答案:while循环在每次迭代前都会检查条件是否满足,如果不满足则不执行循环体;而do-while循环至少执行一次循环体,然后在每次迭代后检查条件是否满足。

2. 描述for循环的基本结构。

答案:for循环的基本结构为for(初始化表达式;条件表达式;更新表达式){循环体},其中初始化表达式用于设置循环变量的初始值,条件表达式用于判断循环是否继续,更新表达式用于更新循环变量。

结束语:以上是循环能力测试题及答案,希望能够帮助大家更好地理解和掌握循环结构的相关知识。

c语言循环题库

c语言循环题库

c语言循环题库一、在C语言中,以下哪个循环结构不是基于条件的循环?A. for循环B. while循环C. do-while循环D. goto语句(答案)二、以下哪个选项不是for循环的控制表达式?A. 初始化表达式B. 循环条件表达式C. 循环体D. 迭代表达式(答案:C是循环体,不是控制表达式)三、在C语言的while循环中,循环条件通常是一个什么类型的表达式?A. 赋值表达式B. 关系表达式或逻辑表达式(答案)C. 算术表达式D. 逗号表达式四、以下哪个选项描述的do-while循环的特点是不正确的?A. 循环体至少执行一次B. 循环条件在循环体之后判断C. 循环条件为真时,循环继续执行D. 循环条件通常是一个赋值表达式(答案)五、在C语言中,如何跳出当前所在的循环体?A. 使用continue语句B. 使用break语句(答案)C. 使用return语句D. 使用goto语句六、以下哪个选项不是使用循环结构时需要注意的问题?A. 循环条件的设置B. 循环体的设计C. 循环变量的初始化(答案:虽然重要,但相比其他选项更偏向于编程习惯)D. 避免无限循环的发生七、在嵌套循环中,如何跳出最外层的循环?A. 使用多次break语句B. 在最外层循环中使用goto语句配合标签跳出(答案)C. 使用continue语句D. 无法直接跳出,需要重新设计循环结构八、以下哪个选项描述的for循环的语法结构是不正确的?A. for(初始化表达式; 循环条件表达式; 迭代表达式) 循环体;B. for(循环条件表达式; 初始化表达式; 迭代表达式) 循环体;(答案)C. for(;;) 循环体; // 相当于一个无限循环D. for(初始化表达式; ; 迭代表达式) { 如果条件满足则执行循环体; } // 需要内部判断条件九、在C语言中,continue语句的作用是?A. 跳出当前循环体,继续执行下一轮循环(答案,但描述略有歧义,实际上是结束当前迭代,进入下一次迭代条件判断)B. 跳出当前函数C. 跳出所有循环D. 结束整个程序十、以下哪个选项不是循环结构在程序设计中的应用场景?A. 重复执行相同的操作直到满足某个条件B. 遍历数组或集合中的每个元素C. 实现递归算法(答案)D. 计算累加、累乘等需要重复计算的问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A.e==0B.e!=1C.e!=0D.~e
(2)下面有关for循环的正确描述是D。
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判定表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环体语句中,可以包含多条语句,但要用花括号括起来
(3)C语言中D。
}
for(i=3;i>0;i--)
{
for(j=1;j<=20-3*i;j++)
cout<<"";
for(k=1;k<=2*i-1;k++)
cout<<"*";
cout<<endl;
}
}
输出结果:
*
***
*****
*******
*****
***
*
3.
(1)编写一个程序,求 之值。
(2)编写一个程序,求s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。
(18)编写程序求出满足下列条件的四位数:该数是个完全平方数;千位、十位数字之和为10,百位、个位数字之积为12。(东师大,05年)
(19)已知abc+cba=1333,其中a,b,c均为一位数,编写一个程序求出abc分别代表什么数字。(东师大,05年)
(20)100匹马驮100担货,大马一匹驮3担,中马一匹驮2担,小马两匹驮1担。试编写程序计算大、中、小马的数目。(东师大,06年)
(6)下列语句段中不是死循环的是__C__。
A.i=100;
while(1)
{
i=i%100+1;
if(i==20)break;
}
B.for(i=1;;i++)
sum=sum+1;
C.k=0;
do
{
++k;
}while(k<=0);
D.s=3379;
while(s++%2+3%2)
s++;
(7)与以下程序段等价的是__A__。
case2:
case3:
case6:break;
case0:
case5:s+=2;break;
}
}
cout<<s;
}
(2)以下程序的运行结果是i=8。
#include<stdio.h>
main()
{
inti=1,s=3;
do
{
s+=i++;
if(s%7==0)
continue;
else
++i;
}while(s<15);
(6)编写一个程序,求e的值。
(7)编写一个程序,求满足如下条件的最大的n:
(8)某人摘下一些桃子,卖掉一半,又吃了一只;第二天卖掉剩下的一半,又吃了一只;第三天、第四天、第五天都如此办理,第六天一看,发现就剩下一只桃子了。编写一个程序,采用迭代法问某人共摘了多少只桃子。
(9)输入一批非0数,直到输入0时为止,计算其中奇数的平均值和偶数的乘积。(东师大,01年)
A.不能使用do-while语句构成的循环
B.do-while语句构成的循环必须用break语句才能退出
C.do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
D.do-while语句构成的循环,当while语句中的表达式值为零时结束循环
(4)C语言中while和do-while循环的主要区别是A。
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
(5)以下程序段C。
intx=-1;
do
{
x=x*x;
}
while(!x);
A.是死循环B.循环执行二次
C.循环执行一次D.有语法错误
#include<stdio.h>
main()
{
inti,j,k;
for(i=1;i<=6;i++)
{
for(j=1;j<=20-3*i;j++)
cout<<"";
for(k=1;k<=i;k++)
cout<<k;
for(k=i-1;k>0;k--)
cout<<k;
cout<<endl;
}
}
输出结果:
(10)求一组整数中的正数之积与负数之和,直到遇到0时结束。(东师大,03年)
(11)输入一组实数,求前10个正数的平均值。(东师大,02年)
(12)编程求1~200中能被2,3,5除余1的前10个整数。(东师大,02年)
(13)输入100个整数,统计这些数中能被3或5整除数所占的百分比。(东师大,02年)(14)计算并输出200—600中能被7整除,且至少有一位数字是3的所有数的和。(东师大,01年)
(15)输出1~999中能被5整除,且百位数字是5的所有整数。(东师大,04年)
(16)设N是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321),求N值。(东师大,03年)\
(17)有这样一个三位数,该三位数等于其每位数字的阶乘之和,即abc=a!+b!+c!。(如:145=1!+4!+5!)(东师大,04年)
1
121
12321
1234321
(6)以下程序的运行结果是____。
#include<stdio.h>
main()
{
inti,j,k;
for(i=1;i<=4;i++)
{
for(j=1;j<=20-3*i;j++)
cout<<"";
for(k=1;k<=2*i-1;k++)
cout<<"*";
cout<<endl;
Cout<<i;
}
(3)以下程序的运行结果是____。
#include<stdio.h>
main()
{
inti,j;
for(i=4;i>=1;i--)
{
cout<<"*";
for(j=1;j<=4-i;j++)
cout<<"*";
cout<<"\n";
}
}
输出结果:
*
**
***
****
(4)以下程序的运行结果是____。
#include<stdio.h>
main()
{
inti,j,k;
for(i=1;i<=6;i++)
{
for(j=1;j<=20-2*i;j++)
cout<<"";
for(k=1;k<=i;k++)
cout<<i;
cout<<endl;
}
}
输出结果:
1
22
333
4444
55555
666666
(5)以下程序的运行结果是____。
24.有一口深度为h米的水井,井底有一只青蛙,它每天白天能够沿井壁向上爬m米,夜里则顺井壁向下滑n米,若青蛙从某个早晨开始向外爬,试编写一个函数:对于任意指定的h,m,n值(均为自然数),计算青蛙多少天能够爬出井口?并简要说明程序实现的基本思想。(南师大09)
求平方根,乒乓球比赛题目
第5章循环结构程序设计
5
while语句的使用格式和注意事项
do-while语句的使用格式和注意事项
for语句的使用格式和注意事项
break和continue语句在循环语句中的应用
循环结构的嵌套
使用goto语句实现循环结构
穷举法程序设计方法
迭代程序设计方法
5
1
(1)语句while(!e);中的条件!e等价于A。
num++;
cout<<num<<endl;
}
}
A.1B.1C.1D.1
222
33
4
2
(1)以下程序的运行结果是__S=7__。
#include<stdio.h>
main()
{
ints=0,k;
for(k=7;k>=0;k--)
{
switch(k)
{
case1:
case4:
case7:s++;break;
main()
{
inti;
for(i=4;i<=10;i++)
{
if(i%3==0)continue;
COUT<<i;
}
}
A.45B.457810C.69D.678910
(9)以下程序的输出结果是__C__。
#include<stdio.h>
main()
相关文档
最新文档