循环结构习题

循环结构一•选择题

1、下面程序段

int k=2;

while (k=0) {pri ntf(

则下面描述中正确的就是A)while循环执行10次

C)循环题语句一次也不执行

2、以下程序段的循环次数就是for (i=2; i==0; ) printf(

A)无限次B)0次

4、下面程序的输出结果就是

mai n ()

{ char c= ' A';

int k=0;

do {

switch (c++) { “%;”,

k);k

B)循环就是无限循环

D)循环体语句执行一次

“ %di--);

C)1次D)2次

case 'A' k++ ; break ;

case ‘ B'--; k

case ‘ C' k+=2 ; break ;

case 'D' k%=2 ; con ti nue

case 'E': k*=10 ; break ;

default :k/=3 ;

}

k++;

} while (c< 'G' );

printf (k=%d”,k);

}

A)k=3 B)k=4 C)k=2 D)k=0

5、下面程序的输出结果就是。

mai n ()

{ int x=9;

for (; x>0; x--) {

if (x%3==0) {

printf( “ %d”;,

con ti nue ;

}

}

}

A)741 B)852

6、以下不就是死循环的程序段就是

A) int i=100;

while (1) { C)963

B)for (;;);

D)875421

do { ++k; } while (k>=0); 7、下述程序段的运行结果就是 int a=1,b=2, c=3, t;

while (a

d,%d,%d ”,a,b,c);

A)

1,2,0 B)2,1,0 C)1,2,1 8、下面程序的功能就是从键盘输入一组字符 择 填

空。

int k=1;

while (k++<10);

A) 10 B)11 C)9 10、下面程序的输出结果就是 mai n ()

{ int k=0,m=0,i,j;

for (i=0; i<2; i++) {

for (j=0; j<3; j++)

k++ ;

k-=j ;

}

m = i+j ;

printf(

“ k=%d,m=%c ” ,k,m); }

A)k=0,m=3 B)k=0,m=5 C)k=1,m=3 11、下面for 循环语句。

int i,k;

for (i=0, k=-1; k=1; i++, k++) printf( “ *** ” );

i=i%100+1 ; if (i>100) break ; }

C) int k=0;

D)i nt s=36; mai n () { int m=0,n=0; char c; while ((【:

{ if (c>= if (c>=

}

}

A)c=getchar() 9、下述语句执行后 n ') && c<= ' Z ,) m++; && c<= ' z ' ) n++; B)getchar( ) C)c==getchar( ) D) scanf( “ %c ” ,

&c) ,变量k 的值就是。 while (s) ; --s ;

D)2,1,1

,从中统计大写字母与小写字母的个数 D)无限循环,值不定 D)k=1,m=5

A)判断循环结束的条件非法B)就是无限循环

C)只循环一次D) 一次也不循环

12、语句while (!E);括号中的表达式!E等价于 _______________________ 。

A)E==O B)E!=1 C)E!=0 D)E==1

13、以下就是死循环的程序段就是。

A)for (i=1; ; ) {

if (i++%2==0) continue ;

if (i++%3==0) break ;

}

B)i=32767;

do { if (i<0) break ; } while (++i);

C)for (i=1 ; ;) if (++I<10) continue ;

D)i=1 ; while (i--);

14、执行语句for (i=1;i++<4;);后变量i的值就是 ____________________ 。

A)3 B)4 C)5 D)不定

15、以下程序段。

x=-1;

do

{ x=x*x; }

while (!x);

A)就是死循环B)循环执行2次C)循环执行1次D)有语法错误

16、下面程序的功能就是在输入的一批正数中求最大者,输入0结束循环,选择_________________ 填空。

mai n ()

{ int a,max=0;

scanf( “ %d',&a);

while (【】){

if (max

scanf ( “ %d' ,&a);

}

printf( “ %d' ,max);

}

A)a==0 B)a C)!a==1 D)!a

17、以下不就是死循环的语句就是。

A)for (y=9,x=1;x>++y;x=i++) i=x ;

B)for ( ; ; x++=i );

C)while (1) { x++ ; }

D)for (i=10 ; ; i--) sum+=i ;

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

x=y=0;

while (x<15) y++,x+=++y ;

printf( “ %d,%d' ,y,x);

A)20,7 B)6,12 C)20,8 D)8,20

19、以下for循环的执行次数就是 ________________ 。

for (x=0,y=0; (y=123) && (x<4) ; x++);

A)无限循环B)循环次数不定C)4次D)3次

20、若运行以下程序时,输入2473/,则程序的运行结果就是。

mai n ()

{ int c;

while ((c=getchar( )) ! = n') '

switch (c- ‘ 2' ) { case 0 :

case 1 : putchar (c+4);

case 2 : putchar (c+4) ; break ;

case 3 : putchar (c+3);

default : putchar (c+2) ; break ;

}

printf( n“);

}

A)668977 B)668966 C)66778777 D)6688766

二填空题

1、C语言三个循环语句分别就是—语句,—语句与—语句。

2、至少执行一次循环体的循环语句就是 _____________ 。

3、循环功能最强的循环语句就是 ____________ 。

5、程序段

for (a=1,i=-1; -1

{ a++ ; printf( “ %2d' ,a); }; printf( “ %2d' ,i);

的运行结果就是_

三•判断题

1、在while循环中允许使用嵌套循环,但只能就是嵌套while循环。【】

2、在实际编程中,do-while循环完全可以用for循环替换。【】

3、continue语句只能用于三个循环语句中。【】

4、在不得已的情况下(例如提高程序运行效率),才使用goto语句。【】

5、语句标号与C语言标识符的语法规定就是完全一样的。【】

6、for循环的三个表达式可以任意省略,while,do-while也就是如此。【】

7、do-while允许从外部转到循环体内。【】

8、while的循环控制条件比do-while的循环控制条件严格。【】

9、do-while循环中根据情况可以省略while。【】

10、do-while循环的while后的分号可以省略。【】四•程序阅读题

1、写出下面程序运行的结果。

mai n ()

{ int x,i ;

for (i=1 ; i<=100 ; i++) {

x=i;

if 什+x%2==0)

if 什+x%3==0)

if(++x%7==0)

printf( “ %d ” ,x);

}

}

2、写出下面程序运行的结果。main ( )

{ int i,b,k=0 ;

for (i=1; i<=5 ; i++) {

b=i%2;

while (b--=0) k++ ;

}

printf( “ %d,%d” ,k,b);

}

3、写出下面程序运行的结果。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;

}

printf( “n%”d ,a);

}

4、写出下面程序运行的结果。main ( )

{ int k=1,n=263 ;

do { k*= n%10 ; n/=10 ; } while (n) ; printf( “n%”dk,); }

5、写出下面程序运行的结果。main ( )

{ int i=5 ;

do {

switch (i%2) {

case 4 : i-- ; break ;

case 6 : i-- ; continue ;

}

i-- ; i-- ;

printf( “ %d” ,i);

}while (i>0) ;

}

6、写出下面程序运行的结果。main ( )

{ int i,j;

for (i=0;i<3;i++,i++) {

for (j=4 ; j>=0; j--) {

if ((j+i)%2) {

j-- ;

printf( “%d,” ,j); continue ;

}

--i ;

j-- ;

printf( “ %d,” ,j) ;

}

}

}

7、写出下面程序运行的结果。main ( ) { int a=10,y=0 ;

do {

a+=2 ; y+=a ;

if (y>50) break ;

} while (a=14) ;

printf( “ a=%d y=%n”d ,a,y) ; }

8、写出下面程序运行的结果。main ( ) { int i,j,k=19;

while (i=k-1) {

k-=3 ;

if (k%5==0) { i++ ; continue ; }

else if (k<5) break ;

i++;

}

printf( “ i=%d,k=%nd” ,i,k);

}

9、写出下面程序运行的结果。main ( ) { int y=2,a=1;

while (y--!=-1)

do {

a*=y ;

a++ ;

} while (y--) ;

printf( “ %d,n%”d ,a,y);

}

10、写出下面程序运行的结果。main ( ) { int i,k=0;

for (i=1; ; i++) {

k++ ;

while (k

k++ ;

if (k%3==0) goto loop ;

}

}

loop:

printf( “ %d,n%”d ,i,k);

}

六.程序填空题

1下述程序用碾转相除法”计算两个整数m与n的最大公约数。该方法的基本思想就是计

算m 与n 相除的余数,如果余数为0 则结束,此时的被除数就就是最大公约数。否则,将除数作为新的被除数,余数作为新的除数,继续计算m 与n 相除的余数,判断就是否为0,等等,请填(3) 空使程序完整。

main ( )

{ int m,n,w;

scanf( “ %d,%d” ,&m,&n);

while (n) {

w=【1 】;

m=【2 】;

n=【3 】;

}

printf( “ %d” ,m);

}

2、下面程序的功能就是输出1至100 之间每位数的乘积大于每位数的与的数,请填(3)空使程序完整。

main ( )

{ int n,k=1,s=0,m ;

for (n=1 ; n<=100 ; n++) {

k=1 ; s=0 ;

【1 】;

while ( 【2 】) {

k*=m%10;

s+=m%10;

【3 】;

}

if (k>s) printf( “ %dd” ,n);

}

}

3、下面程序段的功能就是计算1000!的末尾有多少个零,请填(1)空使程序完整。main ( )

{

int i,k;

for (k=0,i=5; i<=1000; i+=5)

{ m = i ;

while ( 【1 】) { k++; m=m/5 ; }

}

}

4、下面程序接受键盘上的输入,直到按/键为止,这些字符被原样输出,但若有连续的一个以上的空格时只输出一个空格,请填(3)空使程序完整。

main ( )

{

char cx , front= 0

while ( 【1 】!='n') {

if (cx!= ' ' ) putchar(cx)

if (cx== ' ')

if ( 【2 】)

putchar( 【3 】)

front=cx ;

}

5、下面程序按公式求与并输出结果,请填(3)空使程序完整。

main ( )

{

【1 】;

int k ;

for (k=1 ; k<=100 ; k++)

s+=k ;

for (k=1 ; k<=50 ; k++)

s+=k*k ;

for (k=1 ; k<=10 ; k++)

s+=【2 】;

printf( “ su【m3= 】” ,s);

}

七.编程题

1.输入两个正整数m与n,求其最大公约数与最小公倍数。

2.输入一行字符,分别统计出其中英文字母,空格,数字与其她字符的个数。

3.求(即求1!+2!+3!+ …+19!+20!)

4.有一个分数数列: 求出这个数列前20 项之与。

5.提高题:打印出所有的“水仙花数”所,谓“水仙花数”就是指一个3 位数,其各位数字立方之与等于该数本身。

循环结构习题有答案

第6章循环结构程序设计 1.以下叙述正确的是() A、do-while语句构成的循环不能用其它语句构成的循环代替。 B、d o-while语句构成的循环只能用break语句退出。 C、用do-while语句构成的循环,在while后的表达式为非零时结束循环。 D、用do-while语句构成的循环,在while后的表达式为零时结束循环。 答案:D 2.以下程序的输出结果是( ) A、10,1 9,2 B、9,8 7,6 C、10,9 9,0 D、10,10 9,1 main( ) {int x=10,y=10,i; for(i=0;x>8;y=++i) printf("%d,%d",x--,y); } 答案:D 注解:循环执行2次,由x控制循环的执行次数;输出值为两次循环过程中x每次的自减值和y在for语句的第三个表达式中得到的i自增变化后的值。 3.以下程序的输出结果是( ) A、2 0 B、3 1 C、3 2 1 D、2 1 0 main( ) { int n=4; while(n--) printf("%d ",--n); } 答案:A 4.以下程序的输出结果是( ) A、#*#*# B、##### C、***** D、*#*#* main( ) { int i; for(i=1;i<6;i++) { if(i%2) {printf("#");continue;} printf("*"); } printf("\n"); } 答案:A 注解:循环控制变量i的值从1变化到5,i为1、3、5时,i%2为1,if语句的条件为真,则执行if后的子句,输出#,然后执行continue语句,终止本次循环的执行,进入下一轮循环,i为2、4时,i%2为0,if语句的条件为假,则if后的子句并不执行,直接输出*,所以最后的输出为#*#*#。 5.以下程序的输出结果是( ) A、编译不通过,无输出 B、aceg C、acegi D、abcdefghi main( ) { int i;

循环结构练习题

第4章循环结构 (一)、是非题 1. C语言中,do-while语句构成的循环只能用break语句退出。 A.对 B.错 2.在循环外的语句不受循环的控制,在循环内的语句也不受循环的控制。 A.对 B.错 3.从语法角度看,for(表达式1;表达式2;表达式3)语句中的3个表达式均可省略。 A.对 B.错 4.for、while和do while循环结构的循环体均为紧接其后的第一个语句(含复合语句)。 A.对 B.错 5.由i=-1;while(i<10) i+=2;i++;可知,此while循环的循环体执行次数为6次。 A.对 B.错 6.循环for( ; ; )的循环条件始终为真。 A.对 B.错 7.do…while语句的循环体至少执行1次,while和for循环的循环体可能一次也不执行。 A.对 B.错 8.break;语句执行时退出本层循环,continue;语句结束本次循环。 A.对 B.错 9.for循环、while循环和do while循环结构之间可以相互转化。 A.对 B.错 10.break;语句执行时退出到包含该break;语句的所有循环外。。 A.对 B.错 11.二重循环for(i=0;i<5;i+=2) for(j=0;j<5;j++)的循环体的执行次数为15。 A.对 B.错 12.执行i=-1; while(i<10) i+=2;i++; 后,i的值为11。 A.对 B.错 13.int i=1;while(1) i++; 则在任何条件下,该循环语句都会执行无穷多次 A.对 B.错 14.while和do…while的功能完全相同。 A.对 B.错 15.while后的表达式只能是逻辑或关系表达式。 A.对 B.错 16.语句while(E);中的表达式E等价于E!=0。 A.对 B.错 17.只能在循环体内和switch语句体内使用break语句。 A.对 B.错 18.程序段 int k=10; while(k=0)k=k-1; 中,while循环执行10次。 A.对 B.错 19.若i为整型变量,则 for(i=2;i= =0;)printf("%d",i--);循环执行次数是0次。 A.对 B.错 20.执行语句for(i=1;i++<4; );后,变量i的值是4。

循环结构例题

循环结构例题 循环结构例题 1、用迭代法求方程x=cos(x)的根,要求误差小于10-6。 迭代法步骤如下: (1)取x1=0.0,x2=cos(x1)。(2)判断|x2-x1|<10-6。若x2-x1的绝对值大于10-6,则执行x1=x2,重复执行步骤(1);否则执行步骤(3)。 (3)计算结束,输出结果。 #include #include main() { double x1,x2; x1=0.0; x2=cos(x1); while(fabs(x2-x1)>1e-6) { x1=x2; x2= cos(x1); } printf(“x=%f\n”,x2); } 2、计算斐波那契数列(Fibonacci),直到某项大于1000为止,并输出该项的值。Fibonacci数列: f1=1,f2=1, f3=2,f4=3,…….f(n)=f(n-2)+f(n -1)。 程序步骤: (1)f1=1,f2=1,f=f1+f2;(2)判断f的值是否大于1000,若小于或等于1000,则执行步骤(3);若大于1000,则执行步骤(4); (3)f1=f2,f2=f,f=f1+f2,再执行步骤(2); (4)循环结束,输出f的值。#include main()

{ int f1,f2,f; f1=1; f2=1; f=f1+f2; while(f<=1000) { f1=f2; f2=f; f=f1+f2; } printf(“f=%d\n”,f); } 总结:while语句一般应用于循 环次数未知的情况,for语句一般应用于循环次数确定的情况。 一、循环结构的嵌套 定义:在一个循环体中又完整的包含了另一个循环,称为循环嵌套。任意类型的循环结构都可以相互嵌套,循环嵌套可以是多层,但每一层循环在逻辑上必须是完整的。 例题:判断X是否为素数。如 果是X,输出X是素数;否则输出X不是素数。 #include main() { int x,i; scanf(“x=%d”,&x); for(i=2;i if(x%i==0) break; if(i==x) printf(“x是素数”); else printf(“x不是素数”);} 例题:编写程序,找出2——100以内的所有素数。 素数定义:如果一个数只能被1和它本身整除,则这个数是素数。反过来,如果一个数i能被2——i-1之间的某个数整除,则这个数i就不是素数。方法一:

循环结构习题

循环结构一.选择题 1.下面程序段 int k=2; while (k=0) {printf(“%d”,k);k--;} 则下面描述中正确的是。 A)while循环执行10次B)循环是无限循环C)循环题语句一次也不执行D)循环体语句执行一次 2.以下程序段的循环次数是。 for (i=2; i==0; ) printf(“%d” , i--) ; A)无限次B)0次C)1次D)2次 4.下面程序的输出结果是。 main ( ) { char c=’A’; int k=0; do { switch (c++) { case ‘A’ : k++ ; break ; case ‘B’ : k-- ; case ‘C’ : k+=2 ; break ;

case ‘D’ : k%=2 ; continue ; case ‘E’ : k*=10 ; break ; default : k/=3 ; } k++; } while (c<’G’) ; printf (“k=%d”,k) ; } A)k=3 B)k=4 C)k=2 D)k=0 5.下面程序的输出结果是。 main ( ) { int x=9; for (; x>0; x--) { if (x%3==0) { printf(“%d”,--x); continue ; } } } A)741 B)852 C)963 D)875421

6.以下不是死循环的程序段是。 A)int i=100; B)for ( ; ; ) ; while (1) { i=i%100+1 ; if (i>100) break ; } C)int k=0; D)int s=36; do { ++k; } while (k>=0); while (s) ; --s ; 7.下述程序段的运行结果是。 int a=1,b=2, c=3, t; while (a

循环结构程序设计课后习题及答案

循环结构程序设计习题及答案 1、循环语句的三要素分别是、、; 2、for语句括号内的3个表达式的作用分别 是、、; 3、在2层循环嵌套中,外层循环语句的每个执行周期中,内层循环语句都要完整 地,只有当时,才结束整个循环; 4、在循环结构中,break语句的作用是;continue语句的作用是; 5、当循环条件一开始就为假时,对于while语句、do…while语句、for语句,分别执行循环体次、次、次; 6、下面程序段的执行次数: int a=0; whilea=0 { printf"good\n"; a--; } 7、下面程序段的执行次数: int a=0; whilea==0 { printf"good\n"; a--; } 8、下面程序段的执行次数: int a=1; whilea=1 { printf"good\n"; a++; } 9、下面程序段的执行次数: int a=1; whilea==1 { printf"good\n"; a++; } 10、下列程序段的运行结果是; fori=5;i>=0;i-- printf“%d “,i; 11、下列程序段的运行结果是; forn=1;n<20;n=n+3 printf“%d “,n; 12、下列程序段的运行结果是; for ch='a' ;ch<='e' ;ch++ printf“%d“,ch-97;

13、下列程序段的运行结果是; fori=1,j=5 ; i100 break; } C、int a=0; D、int x=21; do whilex { ++a; --x; }whilea>=0; 三、阅读程序,写出程序运行结果; 1、include"stdio.h" main { int i=0,sum=1; do { sum+=i; i++; }whilei<5; printf"%d\n",sum; } 程序运行结果: 2、 include"stdio.h" main { int a,b;

循环结构(50题) - 副本

固定循环 1.画出打印前10个偶数乘积的流程图 2.画出流程图:接受50个数,还显示奇数和偶数的总个数 3.画出显示键入的任何10个数中最大者的流程图 4.绘制流程图以生成前10奇数,并显示这些数值的平均值? 5.绘制流程图以显示前100个自然数的平方根 6.绘制流程图生成Fibonacci数列。前两个数应是0和1,最后一个数应是89。提示:Fibonacci数列的数为:01 1 2 3 5 8 13 21 34 55 89。除了前两个数0和1,数列中的每个数是前两个数之和。 7.办公室电话都有两个分机,分机号为1和2。在任何时间点,只有一个分机忙。以下给出的序列显示了分机1和分机2接收来电的顺序。 1、1、1、1、 2、2、2、1、2、1、2、1、2、2、2、1、2 具体某一天接收来电的总数为200。绘制流程图以显示分机1和分机2接收来电的总数。 8.对以下情形绘制流程图: 接受的100本书包括了书数、书名、书类和销售价。显示以下详细信息: 序列号No 书数BookNo 书名BookName 销售价NetPrice 类别Cat 折扣SP 净价(净价=销售价-折扣)Discount 根据书的类别给出书的折扣,如下表所示:

9.一个班级有20名学生。每个学生参加5个测验。每测验满分为100分。计算并显示每个学生的平均分。 提示:创建模块计算平均得分。 10.求100~150之间和400~500之间能被9整除的数,将结果输出到屏幕上11.任意输入10个数,对这10个数按从小到大排列显示。画出流程图12.已知XYZ+YZZ=532,其中X,Y,Z为0~9的数字,求出X,Y,Z,且显示出来。画出流程图 13.设有计算阶乘的函数f(n)=n!,试设计一个计算阶乘的方法和相应的类,并利用这个类计算f(5)和f(17)的值!画出流程图 14.从键盘逐个输入字符,直到输入‘!’时结束,输出字符的个数(不包括‘!’)。15.输出所有在正整数200和300之间能被6整除、但不能被4整除的数。16.在屏幕上打印文具盒上的九九乘法表,如下: 17.在屏幕上打印以下图案: * ** *** **** ***** ****** ******* 18.打印1——1000中所有21的倍数。

循环结构练习题

循环结构练习题 循环结构是计算机编程中十分重要的一种结构,它可以重复执行一段代码块,实现一定的逻辑功能。为了帮助读者更好地理解和掌握循环结构,本文将提供一些循环结构的练习题,希望能够帮助读者提升编程技能。 1. 题目一 打印从1到100的所有偶数。 解答: ```python for i in range(1, 101): if i % 2 == 0: print(i) ``` 2. 题目二 计算并输出1到100的所有奇数的和。 解答: ```python sum_odd = 0 for i in range(1, 101):

if i % 2 != 0: sum_odd += i print("1到100的所有奇数的和为:", sum_odd) ``` 3. 题目三 打印出九九乘法表。 解答: ```python for i in range(1, 10): for j in range(1, i+1): print(i, "*", j, "=", i*j, end="\t") print() ``` 4. 题目四 计算并输出1到100的所有能被3整除的数的平均值。解答: ```python count = 0

sum_multiple_of_three = 0 for i in range(1, 101): if i % 3 == 0: count += 1 sum_multiple_of_three += i average = sum_multiple_of_three / count print("1到100的所有能被3整除的数的平均值为:", average) ``` 5. 题目五 使用while循环实现从1加到100的和。 解答: ```python i = 1 sum = 0 while i <= 100: sum += i i += 1 print("1加到100的和为:", sum) ```

循环结构程序设计习题及答案

第6章循环结构程序设计 6-1.比较while语句、do–while语句和for语句的异同。 答:(1)while语句、do-while语句用于条件循环,for语句用于计数循环。 (2)while语句、for语句是先判断循环条件,后执行循环体,如果循环条件一开始就不成立,则循环体一次也不被执行;而do-while语句是是先执行循环体,后判断循环条件,所以循环体至少被执行一次。 (3)知道循环的次数可选用for语句实现循环,不知道循环的次数可选用while语句或do-while语句实现循环. (4)一般而言,三种循环语句可等价实现. 6-2 仔细阅读下面的程序,指出程序的运行结果. #include<> void main() { int i; for(i=0;++i;i<5) { if(i==3) {printf("%d\n",++i); break; } printf("%d\n",++i); } } 答:2 4 思考:语句“for(“i=0;++i;i<5”)在编译时为何会给出语法警告错误当将其改为“for(i=0;i<5;++i)”时,运行结果又将如何 6-3 仔细阅读下面的语的程序,指出程序的运行结果。 #include"" void main()

{ int i, a=0; for(i=1;i<=5;i++) {do {i++; a++; } while(i<3); } i++; printf("a=%d,i=%d",a,i); } 答:a=3,i=7 思考:在for循环中嵌套着do-while循环,那么do-while循环中对i的修改会对for循环产生影响吗 6-4编写程序,用1000个单词”computer”填充屏幕,每行60个. 解:#include<> void main() { int i; for(i=1;i<=1000;i++) { printf("computer."); if(i%60==0)printf("\n"); } } 思考:在for循环中,”if(i%60==0)printf(“\n”);”语句的作用是什么没有此语句将会是什么状况 6-5输入一行字符(以$结束),统计其中的数字字符、空格字符出现的次数。 解:#include<> void main() { char c; int d=0,s=0; printf("请输入字符(当输入$时结束):");

循环结构练习题

循环结构练习题 循环结构练习题 循环结构是编程中的一种重要概念,它允许程序重复执行一段代码,直到满足某个条件为止。掌握循环结构的使用方法对于编写高效的程序至关重要。下面我将为大家提供一些循环结构的练习题,帮助大家巩固对循环结构的理解和应用。 1. 打印九九乘法表 九九乘法表是一个经典的循环结构练习题。请编写一个程序,使用嵌套循环打印出完整的九九乘法表。要求输出格式整齐,每个数字占据相同的宽度。 2. 计算斐波那契数列 斐波那契数列是一个以递归定义的数列,其前两项为1,之后的每一项都是前两项的和。请编写一个程序,使用循环结构计算斐波那契数列的前n项,并将结果打印出来。 3. 判断素数 素数是指只能被1和自身整除的自然数。请编写一个程序,使用循环结构判断一个给定的数是否为素数。要求程序能够处理负数和零的情况,并给出相应的提示。 4. 猜数字游戏 猜数字游戏是一种常见的游戏,可以通过循环结构来实现。请编写一个程序,生成一个1到100之间的随机整数,并让用户通过输入来猜测这个数字。根据用户的猜测,给出相应的提示,直到用户猜中为止。 5. 统计字符出现次数

编写一个程序,接受用户输入的一段文本,并统计其中每个字符出现的次数。要求程序能够忽略字符的大小写,并将结果按照字符的出现次数从高到低进行排序。 以上是一些循环结构的练习题,通过解决这些问题,可以帮助大家更好地理解和应用循环结构。在解题过程中,可以尝试使用不同类型的循环结构,如for 循环、while循环等,以及结合条件判断语句来实现不同的功能。 除了以上提到的练习题,还可以根据自己的兴趣和实际需求,设计更多的循环结构练习题。通过不断练习和思考,我们可以逐渐掌握循环结构的使用技巧,提高自己的编程水平。 总结起来,循环结构是编程中的重要概念,通过解决一些练习题,我们可以更好地理解和应用循环结构。希望以上的练习题能够帮助大家提高编程能力,享受编程的乐趣。

for循环练习题及答案

for循环练习题及答案 for循环练习题及答案 在计算机编程中,循环结构是非常重要的一部分,它可以帮助我们重复执行某段代码,提高程序的效率。其中,for循环是一种常见的循环结构,它可以指定循环的次数,并在每次循环中执行相应的操作。为了帮助大家更好地理解和掌握for循环,下面将介绍一些常见的for循环练习题及其答案。 1. 打印九九乘法表 九九乘法表是初学者接触到的第一个经典编程练习题。通过for循环嵌套的方式,我们可以轻松地打印出九九乘法表。 ```python for i in range(1, 10): for j in range(1, i+1): print(f"{j} * {i} = {i*j}\t", end="") print() ``` 2. 计算阶乘 阶乘是数学中常见的概念,表示一个正整数与小于它的所有正整数的乘积。通过for循环,我们可以编写一个函数来计算任意正整数的阶乘。 ```python def factorial(n): result = 1 for i in range(1, n+1):

result *= i return result print(factorial(5)) # 输出120 ``` 3. 求素数 素数是指除了1和自身外,没有其他因数的数。我们可以使用for循环和if条件判断来判断一个数是否为素数。 ```python def is_prime(n): if n < 2: return False for i in range(2, int(n**0.5)+1): if n % i == 0: return False return True print(is_prime(17)) # 输出True ``` 4. 统计列表中的元素个数 给定一个列表,我们可以使用for循环来统计其中某个元素的出现次数。 ```python def count_element(lst, target): count = 0

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

题目、描述、输入、输出、输入样例、输出样例、测试输入、测试输出 循环01:最大数 写一个程序,可以输入一批正数,输入0时结束循环,并且输出最大的正数。 输入39 28 5 63 18 27 0 输出63 测试: 输入153 26 963 28 75 90 156 0 输出963 #include using namespace std; int main() { int i,max=0; cin>>i; while(i!=0) { if(i>max) max=i; cin>>i; } cout< using namespace std; int main() { int n,i,d; cin>>n; for(i=2;i

if(n==i) cout<<"1"< 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< using namespace std; int main() { int n,d=0; cin>>n; while(n>0) { d++;

循环结构习题

循环结构习题 循环结构 一.选择题 1.下面程序段 int k=2; while (k=0) {printf(“%d”,k);k--;} 则下面描述中正确的是。 A)while循环执行10次B)循环是无限循环 C)循环题语句一次也不执行D)循环体语句执行一次2.以下程序段的循环次数是。 for (i=2; i==0; ) printf(“%d” , i--) ; A)无限次B)0次C)1次D)2次 4.下面程序的输出结果是。 main ( ) { char c=’A’; int k=0; do { switch (c++) { case ‘A’ : k++ ; break ; case ‘B’ : k-- ; case ‘C’ : k+=2 ; break ; case ‘D’ : k%=2 ; continue ; case ‘E’ : k*=10 ; break ; default : k/=3 ; } k++; } while (c<’G’) ; printf (“k=%d”,k) ; }

A)k=3 B)k=4 C)k=2 D)k=0 5.下面程序的输出结果是。 main ( ) { int x=9; for (; x>0; x--) { if (x%3==0) { prin tf(“%d”,--x); continue ; } } } A)741 B)852 C)963 D)875421 6.以下不是死循环的程序段是。 A)int i=100; B)for ( ; ; ) ; while (1) { i=i%100+1 ; if (i>100) break ; } C)int k=0; D)int s=36; do { ++k; } while (k>=0); while (s) ; --s ; 7.下述程序段的运行结果是。 int a=1,b=2, c=3, t; while (a printf(“%d,%d,%d”,a,b,c); A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1 8.下面程序的功能是从键盘输入一组字符,从中统计大写字母和小写字母的个数,选择填空。 main ( ) { int m=0,n=0; char c;

for循环练习题

for循环练习题 计算机编程中,循环结构是一种非常重要且常用的代码结构。其中,for循环是最常见和经典的循环类型之一。它的作用是重复执行一段代码,直到达到指定的条件。本文将介绍一些for循环的练习题,以帮助 读者更好地理解和掌握for循环的使用。 问题一:计算和输出1到100之间所有偶数的和 为了计算和输出1到100之间所有偶数的和,我们可以使用for循 环从1到100遍历每一个数,判断其是否为偶数,如果是,就将其累 加到一个变量中。代码如下: ```python sum = 0 for i in range(1, 101): if i % 2 == 0: sum += i print("1到100之间所有偶数的和为:", sum) ``` 问题二:输出九九乘法表 九九乘法表是学习数学时经常使用的一个练习题。通过使用嵌套的for循环,可以方便地输出九九乘法表。代码如下:

for i in range(1, 10): for j in range(1, i+1): print(j, "*", i, "=", i*j, end=" ") print() ``` 问题三:判断一个数是否为质数 质数是指除了1和它本身以外,不能被其他数整除的数。判断一个数是否为质数是一个常见的编程问题。我们可以使用for循环从2开始到该数的平方根,逐个判断是否能整除该数。如果能整除,则该数不是质数,否则是质数。代码如下: ```python import math num = int(input("请输入一个正整数:")) is_prime = True for i in range(2, int(math.sqrt(num))+1): if num % i == 0: is_prime = False break

循环结构练习题

第13题图 循环结构练习题 1、Visual Basic 程序段如下:该程序段运行后,变量s 的值是( ) s=0 For k=1 To 5 s=s+5 Next k (A ) 0 (B ) 5 (C ) 10 (D ) 25 2、应用计算机程序解决数学问题“求一元二次方程实数解”的步骤,通常是( )。 A. 设计算法→编写程序 B. 编写程序→调试程序→检测结果 C. 分析问题→设计算法→编写程序→调试运行→检测结果 D. 编写程序→调试运行 3、“=”在Visual Basic 程序中既可以表示赋值操作,也可以表示关系运算。右图程序段中“=”作用和⑤相同的是 A .① B .② C .③ D .④ 4、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?( ) A .分析问题 B .设计算法 C .编写程序 D 、调试程序 5、流程图中表示判断的是( )。 A.矩形框 B.菱形框 C.圆形框 D.椭圆形框 6、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是( ) A .顺序结构 B .选择结构 C .层次结构 D .循环结构 7、执行完循环语句 For x=1 to 100 step 2 …… Next x 后,x 的值是( ) A .101 B .100 C .99 D .98 8、下列给出的赋值语句中正确的是( )。 A .4 = M B .-M =M C .B=A -3 D .x + y = 0 9、以下程序中的循环体执行的次数是( )。 For A=1 To 100 Step 2 S=S+A Next A Print S A .48 B .49 C .50 D .51 10、下列程序代码中,循环体执行的次数是( )。 y = 1 Do While y <= 6

最新2.2.3循环结构练习题(含答案)

2.2.3循环结构练习 题(含答案) ------------------------------------------作者xxxx ------------------------------------------日期xxxx

必修三2。2.3《循环结构》练习题 基础训练 一、选择题 1.以下说法不正确的是( ) A.顺序结构是由若干个依次执行的处理步骤组成的,每一个算法都离不开顺序结构 B.循环结构是在一些算法中从某处开始按照一定的条件,反复执行某些处理步骤,故循环结构一定包含选择结构 C.循环结构不一定包含选择结构 D.用算法框图表示的算法更形象、直观,容易理解 2.框图(如下图)中的循环体是( ) A.A B.B C.C D.D 3.执行如图所示的程序框图,则输出的S的值是( )

A.4ﻩB.错误! C。错误! D.-1 4.执行如图所示的程序框图,输出的S值为( ) A.2 B.4 C.8ﻩD.16 5.(2014·安徽理,3)如图所示,程序框图(算法流程图)的输出结果是()

A.34ﻩB.55 C.78ﻩD.89 6.如果执行下边的程序框图,输入正整数N(N≥2)和实数a1,a2,…,aN,输出A,B,则( ) A.A+B为a1,a2,…,aN的和 B。错误!为a1,a2,…,a N的算术平均数 C.A和B分别是a1,a2,…,aN中最大的数和最小的数 D.A和B分别是a1,a2,…,aN中最小的数和最大的数 二、填空题 7.(2014·江苏,3)下图是一个算法流程图,则输出的n的值是________. 8.如图所示,程序框图(算法流程图)的输出结果是________.

相关主题
相关文档
最新文档