当前位置:文档之家› 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语句跳出循环体。

D.for循环的循环体语句汇总,可以包含多条语句,但必须用花括号括起来。

11.运行下面程序#include<stdio.h>int main( ){ int k=0,a=1;while(k<10){ for( ; ;){if((k%10)==0) break;else k--;}k+=11;a+=k;}printf(“%d %d\n”,k,a);return 0;}则输出的结果是()。

A. 21 32B. 21 33C. 11 12D. 10 11 12.若i为整型变量,则以下循环执行的次数是()for(i=2;i==0;)p rintf(“%d”,i--);A.无限次 B 0次 C 1次 D 2次13.以下循环体的执行次数是;main(){int I,j;for(i=0,j=3;i<=j;i+=2,j--)printf(“%d\n”,i);}A 3B 2C 1D 014.执行以下程序后,输出结果是:main(){ int y=10;do { y--;}while(--y);printf(“%d”,y--);}A -1B 1C 8D 015 以下程序的输出结果是:mian(){ int a,b;for(a=1,b=1;a<=100;a++){if(b>=10) break;if(b%3==1) {b+=3; continue;}}printf(“%d”,a);}A 101B 3C 4D 516、以下程序的运行结果是()。

#include <stdio.h>int main( ){int n[5]={0,0,0},i,k=2;for (i=0;i<k;i++) n[i]=n[i]+1;printf (”%d\n”,n[k]);return 0;}A. 不确定的值B. 2C. 1D. 017、若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是()。

A. a[2][!1]B. a[2][3]C. a[0][3]D. a[1>2][ !1]18、以下程序的运行结果是()。

#include <stdio.h>int main( ){int a[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,}},i,k,t;for(i=0;i<3;i++)for(k=i+i;k<4;k++)if(a[i][i]<a[k][k]){t=a[i][i];a[i][i]=a[k][k];a[k][k]=t;}for(i=0;i<4;i++) printf(“%d,”,a[0][i]);return 0;}A.6,2,1,1,B. 6,4,3,2,C. 1,1,2,6,D. 2,3,4,6,19、若有说明:int a[3][4]={0};则下面正确的叙述是()。

A. 只有元素a[0][0]可得到初值0B. 此说明语句不正确C. 数组a中各元素都可得到初值,但其值不一定为0D. 数组a中每个元素均可得到初值020、设有数组定义:char array[]=“china”,则数组array所占的空间为()。

A. 4个字节B. 5个字节C. 6个字节D. 7个字节21、当执行下面的程序时,若输入ABC,则运行结果是()。

#include <stdio.h>#include<string.h>int main( ){char ss[10]=“1,2,3,4,5”;gets (ss);strc at(ss, “6789”);printf(“%s\n”,ss);}A.ABCB.ABC6789C.123456789D.ABC,3,4,522、为了判断两个字符串str1和str2是否相等,应当使用()。

A.if(str1==str2)B.if(str1=str2)C.if(strcmp(str1,str2))D.if(strcmp(str1,str2)==0)23、以下程序的运行结果是()。

#include <stdio.h>voidmain( ){char arr[2][4];strcpy(arr[0],”you”);strcpy(arr[1],”me”);arr[0][3]=…&‟;printf(“%s\n”,arr);}A.you&meB.youC.meD.err24、以下程序段的运行结果是()。

printf(“%d\n”, strlen(“ATS\n012\1\\”));A. 11B. 10C. 9D. 825、当执行下面的程序时,若输入ABC,则运行结果是()。

#include <stdio.h>#include<string.h>int main( ){char ss[10]=“1,2,3,4,5”;gets (ss);strc at(ss, “6789”);printf(“%s\n”,ss);}A.ABCB.ABC6789C.123456789D.ABC,3,4,5二、填空题1.以下程序的运行结果是。

#include <stdio.h>intmain( ){ int a=2,b=8;while(b--<0)b-=a ;a++ ;printf(“a=%d,b=%d\n”,a,b);return 0;}2.下面程序的运行结果为:main(){int a=10,y=0;do{a+=2;y+=a;if(y>50) break;}while(a<14);printf(“a=%d,y=%d\n”,a,y);}3.从键盘输入1 2 3 4 5 -1 回车,则下面程序运行的结果是:main(){ int n,k=0;do{ scanf(“%d”,&n);k+=n;}while(n!=-1);printf(“k=%d,n=%d”,k,n);}4.下面程序的运行结果为:main(){int i,j,s=0;for(i=1,j=5;i<j;i++,j--)s+=i*10+j;printf(“\n%d”,s);}5.下面程序的运行结果是main(){int i=10,s=0;for(;--i;)if(i%3==0)s+=i;s++;printf(“\ns=%d”,s);}6.下面程序的运行结果是main(){int a=2,n=5,s;s=a;for(;--n;)s=s*10+a;printf(“%d”,s);}7.下面的程序运行时,循环体语句“a++”运行的次数为:main(){int i,j,a=0;for(i=0;i<2;i++)for(j=4,j>=0;j--)a++;}8.下面的程序运行后,a的值为:main(){ int i,j,a=0;for(i=0;i<2;i++) a++;for(j=4,j>=0;j--) a++;}9.下面程序的运行结果为:int i=1,s=3;do{s+=i++;if(s%7==0) continue;else ++i;}while(s<15);printf(“%d”,i);10.当运行以下程序时,从键盘输入China# 回车,则下面程序的运行结果是:#include “stdio.h”main(){ int v1=0,v2=0;char c;while((c=getchar())!=‟#‟){ switch(c){ case …a‟:case …h‟:default:v1++;case …o‟:v2++;}}printf(“%d,%d\n”,v1,v2);}11、以下程序若输入AabD↙,运行结果是:。

#include <stdio.h>int main( ){char s[80];int i=0;gets(s);while (s[i]!=…\0‟){if (s[i]<=…z‟ && s[i]>=…a‟)s[i]=…z‟+‟a‟-s[i] ;i++;}puts(s);return 0;}12、以下程序若输入7 4 8 9 1 5↙,运行结果是:。

相关主题