C++循环练习题

合集下载

C语言循环习题

C语言循环习题

循环习题集锦一.选择题1.for(i=0;i<10;i++);结束后,i的值是;A 9B 10C 11D 122.下面程序的循环次数是:#include<>void main(){int k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}printf(“k=%d\n”,k);}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是()#include<>void main(){int s,k;for(s=1,k=2;k<5;k++)s=s+k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10个整数,则在下画线处填入正确的数是:#include<>void main(){int i;for(i=0;i<= ;)printf(“i=%d\n”,i=i+2);} (显示的是:2,4,6,8,10,12, (20)A 9B 10C 18D 205.运行下面程序:#include<>void main(){int i=10,j=0;do{j=j+i; /*第一:10,第二:19第三:27第四:34第五:40*/i--;}while(i>5);printf(“%d\n”,j);}输出结果是:A 45B 40C 34D 556.运行下面程序#include <>main(){int k=0,a=1;while(k<10){for( ; ;){ if((k%10)==0)/*当循环开始的时候时,k=0,此时和10取3余的结果就等于0,就跳出了for循环开始下面的循环*/ break;elsek--;}k=k+11;a=a+k;printf(“k=%d \n a=%d\n”,k,a);}则输出的结果是()A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是:A. do---while语句构成的循环不能用其他语句构成的循环来代替。

C语言循环结构练习题

C语言循环结构练习题

第5 章循环结构程序设计5.1 基本知识点while 语句的使用格式和注意事项do-while 语句的使用格式和注意事项for 语句的使用格式和注意事项break 和continue 语句在循环语句中的应用循环结构的嵌套使用goto 语句实现循环结构穷举法程序设计方法迭代程序设计方法5.2 练习题51.单项选择题(1)语句while (!e); 中的条件!e 等价于。

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

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

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

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

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

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)与以下程序段等价的是while (a){if (b) continue;c;}A. while (a) { if (!b) c; }B. while (c){ if (!b) break; c; }C. while (c){ if (b) c; }( 8)以下程序的输出结果是 ________ 。

C语言循环数组练习题

C语言循环数组练习题

循环数组练习题一.选择题1.for(i=0;i<10;i++);结束后,i的值是;BA 9B 10C 11D 122.下面程序的循环次数是:Dint k=0;while(k<10){if(k<1) continue;if(k==5) break;k++;}A. 5 B 6 C 4 D 死循环,不能确定循环次数3.下面程序的输出结果是()main(){int s,k;for(s=1,k=2;k<5;k++)s+=k;printf(“%d\n”,s);}A 1B 9C 10D 154.要使下面程序输出10个整数,则在下画线处填入正确的数是:for(i=0;i<= ;)printf(“%d\n”,i+=2);A 9B 10C 18D 205.运行下面程序: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);}则输出的结果是()A 21 32B 21 33C 11 12D 10 117.以下叙述正确的是: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);}该程序的执行结果是:A 3 2 1B 2 1 0C 3D 29.若k为整型变量,则下面while循环执行的次数为:k=10;while(k==0) k=k-1;A 0B 1C 10 D无限次10.下面有关for循环的正确描述是A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break语句跳出循环体。

C程序设计(循环)习题与答案

C程序设计(循环)习题与答案

一、单选题1、有以下程序段:int k=2;while (k=0) { printf("%d",k) ; k-- ; }则下面描述中正确的是()。

A.循环体语句一次也不执行B.while循环执行10次C.循环是无限循环D.循环体语句执行一次正确答案:A2、下面程序段执行后的输出结果是()。

int a=1,b=2,c=3,t;while (a<b<c){t=a;a=b;b=t;c--;}printf("%d,%d,%d",a,b,c);A.2,1,0B.2,1,1C.1,2,0D.1,2,1正确答案:D3、下面程序段执行后的输出结果是()。

#include <stdio.h>int main(){ int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d",x,y,z);return 0;}A.4,3,-1B.5,-2,-5C.3,2,0D. 3,2,-1正确答案:D4、下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择()填入到【】中。

#include <stdio.h>int main(){ int m=0,n=0; char c;while ((【】)!='\n') {if (c>='A' && c<='Z') m++ ;if (c>='a' && c<='z') n++ ;}return 0;}A.scanf("%c",&c)B.c==getchar()C.getchar()D.c=getchar()正确答案:D5、语句while (!E){......}; 中的表达式!E等价于()。

C循环练习题

C循环练习题

循环练习题第一次作业:1.设有程序段 int k=10; while (k=0) k=k-1; 则下面描述中正确的是 ( )A. while循环执行10次B.循环是无限循环C. 循环体语句一次也不执行D.循环体语句执行一次2.设有以下程序段 int x=0,s=0; while(!x!=0)s+=++x;cout<<s;则()A. 运行程序段后输出0B. 运行程序段后输出1C. 程序段中的控制表达式是非法的D. 程序段执行无限次3、下面程序段的运行结果是()int x=0,y=0;while(x<15) y++,x+=++y;cout<<y<<x;A、20,7B、6,12C、20,8 D 8,204、下面程序段的运行结果是()int n=0;while (n++<=2); cout<<n;A,2 B、3 C、4 D 有语法错误5、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。

当输入一对相等的数时结束循环,请选择填空。

void main(){ int a,b,t;cin>>a>>b;while( ){if(a>b) {t=a;a=b;b=t;}cout<<a<<b;}cout<<a<<b;}A、!a=bB、a!=bC、a==bD、a=b6、下面程序的运行结果是()void main( ){int num=0;while(num<=2){num++; cout<<num<<endl;}}A.1B.1<CR>2C.1<CR>2<CR>3D.1<CR>2<CR>3<CR>47、C++语言中while和do-while循环的主要区别是()A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do–while的循环控制条件严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句8、以下程序段()x=-1;do{x=x*x;}1while(!x);A.是死循环B.循环执行二次C.循环执行一次D.有语法错误9、以下描述中正确的是()A.由于do -while循环中循环语句中只能是一条可执行语句,所以循环体内不能使用复合语句。

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语言循环习题

C语言循环习题

C语言循环习题1. 打印出1到100之间所有的偶数。

c#includeint main{int i;for(i = 2; i <= 100; i += 2) {printf("%d ", i);}return 0;}2. 计算1到100之间所有整数的和。

c#includeint main{int i, sum = 0;for(i = 1; i <= 100; i++) {sum += i;}printf("Sum = %d", sum);return 0;}3. 判断一个数是否为素数。

c#includeint num, i, isPrime = 1;printf("Enter a number: ");scanf("%d", &num);for(i = 2; i <= num/2; i++) {if(num % i == 0) {isPrime = 0;break;}}if(isPrime) {printf("%d is a prime number.", num);} else {printf("%d is not a prime number.", num); }return 0;}4. 打印出以下图案:***************c#includeint main{for(i = 1; i <= 5; i++) {for(j = 1; j <= i; j++) {printf("*");}printf("\n");}return 0;}5. 生成Fibonacci数列的前n个数。

c#includeint main{int n, i;long long int first = 0, second = 1, next; printf("Enter the number of terms: "); scanf("%d", &n);printf("Fibonacci Series: ");for(i = 0; i < n; i++) {printf("%lld ", first);next = first + second;first = second;second = next;}return 0;}这些习题涵盖了循环的不同应用场景,包括打印、求和、判断和生成数列等。

c语言循环训练题

c语言循环训练题

c语言循环训练题以下是C语言循环训练题:计算1到100之间所有奇数的和。

输出1到100之间的所有偶数。

求出1到100之间所有3的倍数的和。

输出一个5x5的矩阵,其中每个元素都是从1到25的随机整数。

计算一个数列中所有数字的和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的阶乘之和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的阶乘之积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的平方和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的平方积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的立方和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的立方积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的倒数的和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的倒数的积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的四次方和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的四次方积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的绝对值之和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的绝对值之积,其中数列中的数字依次为1、2、3、...、n。

计算一个数列中所有数字的平方根之和,其中数列中的数字依次为1、2、3、...、n。

输出一个数列中所有数字的平方根之积,其中数列中的数字依次为1。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

循环练习题
第一次作业:
1.设有程序段 int k=10; while (k=0) k=k-1; 则下面描述中正确的是( )
A. while循环执行10次
B.循环是无限循环
C. 循环体语句一次也不执行
D.循环体语句执行一次
2.设有以下程序段 int x=0,s=0; while(!x!=0)s+=++x;cout<<s;则()
A. 运行程序段后输出0
B. 运行程序段后输出1
C. 程序段中的控制表达式是非法的
D. 程序段执行无限次
3、下面程序段的运行结果是()
int x=0,y=0;
while(x<15) y++,x+=++y;
cout<<y<<x;
A、20,7
B、6,12
C、20,8 D 8,20
4、下面程序段的运行结果是()
int n=0;
while (n++<=2); cout<<n;
A,2 B、3 C、4 D 有语法错误
5、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。

当输入一对相等的数时结束循环,请选择填空。

void main()
{ int a,b,t;
cin>>a>>b;
while( )
{if(a>b) {t=a;a=b;b=t;}
cout<<a<<b;}
cout<<a<<b;
}
A、!a=b
B、a!=b
C、a==b
D、a=b
6、下面程序的运行结果是()
void main( )
{int num=0;
while(num<=2)
{num++; cout<<num<<endl;}}
A.1
B.1<CR>2
C.1<CR>2<CR>3
D.1<CR>2<CR>3<CR>4
7、C++语言中while和do-while循环的主要区别是()
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do–while的循环控制条件严格
C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句8、以下程序段()
x=-1;
do{x=x*x;}
while(!x);
A.是死循环
B.循环执行二次
C.循环执行一次
D.有语法错误
9、以下描述中正确的是()
A.由于do -while循环中循环语句中只能是一条可执行语句,所以循环体内不能使用复合语句。

B.do-while循环由do开始,且while结束,在while(表达式)后面不能写分号。

C.在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作。

D.do-while循环中,根据情况可以省略while
10、下面有关for循环的正确描述是()
A.for循环只能有于循环次数已经确定的情况
B.for 循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须花括号括起来
11、对for(表达式1;; 表达式3)可理解为()
A.for(表达式1;0;表达式3)
B.for(表达式1;1;表达式3)
C.for(表达式1;表达式1;表达式3)
D.for(表达式1;表达式3;表达式3)
12、若i为整型变量,则以下循环执行的次数是()
for(i=2;i=0;) printf(“%d”,i--);
A.无限次
B.0次
C.1次
D.2次
13、执行语句for(I=1;I++<4;);后变量I的值是()
A.3 B.4 C.5 D.不定
14、下面程序的功能是计算1到50中是7的倍数的数值之和,请选择填空。

void main()
{int I,sum=0;
for(I=1;I<=50;I++)
if(______)sun+=I;
cout<<sum;}
A.(int)(i/7)=i/7 B.(int)i/7=i/7 C.i%7+0 D.i%7==0
15、下面程序的运行结果是()
void main()
{int I,b,k=0;
for(I=1;I<=5;I++)
{b=I%2;
while(b-->=0) k++;}
cout<<k<<”,”<<b;}
A.3,-1
B.8,-1
C.3,0
D.8,-2
第二次作业
16、以下正确的描述是()
A. continue语句的作用是结束整个循环的执行
B. 只能在循环体内和switch语句体内使用break语句
C. 在循环体内使用break或continue语句
D. 从多层循环嵌套中退出时,只能使用goto语句
17、下面程序段()
x=3;
do{y=x--;
if(!y) { cout<< “x”; continue;}
cout<< “#”;}
while(1<=x<=2);
A.将输出##
B.将输出##*
C.是死循环
D.含有不合法的控制表达式
18、下面程序的运行结果是()
void main()
{int k=0; char c=’A’;
do {switch(c++)
{case’A’:k++;break;
case’B’:k--;
case’C’:k+=2;break;
case’D’:k=k%2;continue;
case’E’:k=k*10;break;
default:k=k/3;}}
while(c<’G’);
cout<< “k=%d\n”<<k;}
A.k=3
B.k=4
C.k=2
D.k=0
19、下面程序的运行结果是()
void main()
{int a,b;
for(a=1,b=1;a<=100;a++)
{if(b>=20)break;
if(b%3==1) {b+=3;continue;}
b=-5;}
cout<< a<<endl;}
A.7
B.8
C.9
D.10
20、下面程序的运行结果是()
void main()
{int I;
for(I=1;I<=5;I++)
{if(I%2) cout<< “*”;
else continue;
cout<< “#”;}
cout<< “$\n”;}
A.*#*#*#$
B.#*#*#*$
C.*#*#$
D.#*#*$
21、下面程序的运行结果是:
void main( )
{int a;
for(a=1;a<=5;a++)
switch(a%5)
{case 0:cout<<“*”;break;
case 1: cout<< “#”;break;
default: cout<< “\n”;
case 2: cout<<“&”;}}
结果:
22、下面程序的运行结果是:
void main()
{int I,j,a=0;
for(I=0;I<2;I++)
{for(j=0;j<4;j++)
if(j%2) break;
a++;}
a++;
cout<<a;}
结果:
23、鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空。

for(x=1;x<=29;x++)
{y=30-x;
if(_______________)cout<<x <<”+”<<y;}
24、下面程序的运行结果是:_________
void main()
{int I=1;
while(I<=15)
if(++I%3!=2) continue;
else cout<<I ;
cout<<endl;}
25、下面程序的输出结果是: __________
void main()
{int I,j,k=19;
while(I=k-1)
{k-=3;
if(k%5==0) {I++;continue;}
else if(k<5) break;
I++;}
cout<<“I=”<< I <<“,k=”<<k;} 26、下面程序的运行结果是:_________
void main()
{int a,y;
a=10;y=0;
do{a+=2;y+=a;
if(y>50)break;
}while(a=14);
cout<<“a=”<< a <<“y=”<<y;}。

相关文档
最新文档