C语言循环数组练习题解读.docx

上传人:b****5 文档编号:6858750 上传时间:2023-01-11 格式:DOCX 页数:12 大小:17.58KB
下载 相关 举报
C语言循环数组练习题解读.docx_第1页
第1页 / 共12页
C语言循环数组练习题解读.docx_第2页
第2页 / 共12页
C语言循环数组练习题解读.docx_第3页
第3页 / 共12页
C语言循环数组练习题解读.docx_第4页
第4页 / 共12页
C语言循环数组练习题解读.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

C语言循环数组练习题解读.docx

《C语言循环数组练习题解读.docx》由会员分享,可在线阅读,更多相关《C语言循环数组练习题解读.docx(12页珍藏版)》请在冰豆网上搜索。

C语言循环数组练习题解读.docx

C语言循环数组练习题解读

循环数组练习题

一.    选择题

1.for(i=0;i<10;i++);结束后,i的值是;B

A9B10C11D12

2.下面程序的循环次数是:

D

intk=0;

while(k<10)

{if(k<1)continue;

if(k==5)break;

k++;

}

A.5B6C4D死循环,不能确定循环次数

3.下面程序的输出结果是()

main()

{

ints,k;

for(s=1,k=2;k<5;k++)

s+=k;

printf(“%d\n”,s);

}

A1B9C10D15

4.要使下面程序输出10个整数,则在下画线处填入正确的数是:

for(i=0;i<=;)

printf(“%d\n”,i+=2);

A9B10C18D20

5.运行下面程序:

main()

{inti=10,j=0;

do

{j=j+i;

i--;

}while(i>5);

printf(“%d\n”,j);

}

输出结果是:

A45B40C34D55

6.运行下面程序

#include“stdio.h”

main()

{intk=0,a=1;

while(k<10)

{

for(;;)

{if((k%10)==0)

break;

else

k--;

}

k+=11;

a+=k;

}

printf(“%d%d\n”,k,a);

}

则输出的结果是()

A2132B2133C1112D1011

7.以下叙述正确的是:

A.do---while语句构成的循环不能用其他语句构成的循环来代替。

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

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

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

8.有如下程序:

main()

{intx=3;

do{

printf(“%d”,x--);

}while(!

x);

}

该程序的执行结果是:

A321B210C3D2

9.若k为整型变量,则下面while循环执行的次数为:

k=10;

while(k==0)k=k-1;

A0B1C10D无限次

10.下面有关for循环的正确描述是

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体。

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

11.运行下面程序

#include

intmain()

{intk=0,a=1;

while(k<10)

{for(;;)

{if((k%10)==0)break;

elsek--;

}

k+=11;a+=k;

}

printf(“%d%d\n”,k,a);

return0;

}则输出的结果是()。

A.2132B.2133C.1112D.1011

12.若i为整型变量,则以下循环执行的次数是()

for(i=2;i==0;)printf(“%d”,i--);

A.无限次B0次C1次D2次

13.以下循环体的执行次数是;

main()

{

intI,j;

for(i=0,j=3;i<=j;i+=2,j--)

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

}

A3B2C1D0

14.执行以下程序后,输出结果是:

main()

{inty=10;

do{y--;}while(--y);

printf(“%d”,y--);

}

A-1B1C8D0

15以下程序的输出结果是:

mian()

{inta,b;

for(a=1,b=1;a<=100;a++)

{

if(b>=10)break;

if(b%3==1){b+=3;continue;}

}

printf(“%d”,a);

}

A101B3C4D5

16、以下程序的运行结果是()。

#include

intmain()

{intn[5]={0,0,0},i,k=2;

for(i=0;i

printf(”%d\n”,n[k]);

return0;

}

A.不确定的值B.2C.1D.0

17、若有定义:

inta[2][3];,以下选项中对a数组元素正确引用的是()。

A.a[2][!

1]B.a[2][3]C.a[0][3]D.a[1>2][!

1]

18、以下程序的运行结果是()。

#include

intmain()

{inta[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]

for(i=0;i<4;i++)printf(“%d,”,a[0][i]);

return0;

}

A.6,2,1,1,B.6,4,3,2,C.1,1,2,6,D.2,3,4,6,

19、若有说明:

inta[3][4]={0};则下面正确的叙述是()。

A.只有元素a[0][0]可得到初值0

B.此说明语句不正确

C.数组a中各元素都可得到初值,但其值不一定为0

D.数组a中每个元素均可得到初值0

20、设有数组定义:

chararray[]=“china”,则数组array所占的空间为()。

A.4个字节B.5个字节C.6个字节D.7个字节

21、当执行下面的程序时,若输入ABC,则运行结果是()。

#include

#include

intmain()

{charss[10]=“1,2,3,4,5”;

gets(ss);

strcat(ss,“6789”);

printf(“%s\n”,ss);

}

A.ABCB.ABC6789C.123456789D.ABC,3,4,5

22、为了判断两个字符串str1和str2是否相等,应当使用()。

A.if(str1==str2)B.if(str1=str2)

C.if(strcmp(str1,str2))D.if(strcmp(str1,str2)==0)

23、以下程序的运行结果是()。

#include

voidmain()

{chararr[2][4];

strcpy(arr[0],”you”);

strcpy(arr[1],”me”);

arr[0][3]=‘&’;

printf(“%s\n”,arr);

}

A.you&meB.youC.meD.err

24、以下程序段的运行结果是()。

printf(“%d\n”,strlen(“ATS\n012\1\\”));

A.11B.10C.9D.8

25、当执行下面的程序时,若输入ABC,则运行结果是()。

#include

#include

intmain()

{charss[10]=“1,2,3,4,5”;

gets(ss);

strcat(ss,“6789”);

printf(“%s\n”,ss);

}

A.ABCB.ABC6789

C.123456789D.ABC,3,4,5

二、填空题

1.       以下程序的运行结果是。

#include

intmain()

{inta=2,b=8;

while(b--<0)

b-=a;

a++;

printf(“a=%d,b=%d\n”,a,b);

return0;

}

2.         下面程序的运行结果为:

main()

{inta=10,y=0;

do

{a+=2;y+=a;

if(y>50)break;

}while(a<14);

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

}

3.从键盘输入12345-1回车,则下面程序运行的结果是:

main()

{intn,k=0;

do

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

k+=n;

}while(n!

=-1);

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

}

4.下面程序的运行结果为:

main()

{inti,j,s=0;

for(i=1,j=5;i

s+=i*10+j;

printf(“\n%d”,s);

}

5.下面程序的运行结果是

main()

{

inti=10,s=0;

for(;--i;)

if(i%3==0)

s+=i;

s++;

printf(“\ns=%d”,s);

}

6.下面程序的运行结果是

main()

{inta=2,n=5,s;

s=a;

for(;--n;)

s=s*10+a;

printf(“%d”,s);

}

7.下面的程序运行时,循环体语句“a++”运行的次数为:

main()

{inti,j,a=0;

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

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

a++;

}

8.下面的程序运行后,a的值为:

main()

{inti,j,a=0;

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

for(j=4,j>=0;j--)a++;

}

9.下面程序的运行结果为:

inti=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()

{intv1=0,v2=0;

charc;

while((c=getchar())!

=’#’)

{switch(c)

{case‘a’:

case‘h’:

default:

v1++;

case‘o’:

v2++;

}

}

printf(“%d,%d\n”,v1,v2);

}

11、以下程序若输入AabD↙,运行结果是:

#include

intmain()

{chars[80];

inti=0;

gets(s);

while(s[i]!

=‘\0’)

{if(s[i]<=‘z’&&s[i]>=‘a’)

s[i]=‘z’+’a’-s[i];

i++;

}

puts(s);

return0;

}

12、以下程序若输入748915↙,运行结果是:

#include

intmain()

{inta[6],i,j,k,m;

for(i=0;i<6;i++)

 scanf(“%d”,&a[i]);

for(i=5;i>=0;i--)

{k=a[5];

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

a[j+1]=a[j];

a[0]=k;

}

for(m=0;m<6;m++)

printf(“%d“,a[m]);

printf(“\n”);

return0;

}

13、以下程序的运行结果是。

#include

intmain()

{inta[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};

inti=0,j=0,s=0;

while(i++<4)

{if(i==2||i==4)continue;

j=0;

do

{s+=a[i][j];

j++;

}while(j<4);

}

printf(“%d\n”,s);

return0;

}

14、以下程序的运行结果是。

#include

intmain()

{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

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

for(j=i;j<=1;j++)

t+=b[i][b[j][i]];

printf(“%d\n”,t);

return0;

}

15、下面程序运行后的运行结果是。

#include

intmain()

{chars[]=“12134211”;

intv1=0,v2=0,v3=0,v4=0,k;

for(k=0;s[k];k++)

switch(s[k])

{default:

v4++;

case'1':

v1++;

case'3':

v3++;

case'2':

v2++;

}

printf(“v1=%d,v2=%d,v3=%d,v4=%d\n”,v1,v2,v3,v4);

return0;

}

三、编程题

1.  求1-2+3-4+…+99-100。

2.计算1---100以内的所有含2的数的和。

3.输入10个数,按照由小到大的顺序输出。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1