第六章习题及答案.docx
- 文档编号:8009693
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:13
- 大小:26.21KB
第六章习题及答案.docx
《第六章习题及答案.docx》由会员分享,可在线阅读,更多相关《第六章习题及答案.docx(13页珍藏版)》请在冰豆网上搜索。
第六章习题及答案
第六章习题
一、选择题(*号题选做)
(1)若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是()。
D
A)#defineN10B)#definen5
inta[N];inta[2*n];
C)inta[5+5];D)intn=10,a[n];
(2)以下错误的定义语句是()。
C
A)intx[][3]={{0},{1},{1,2,3}};
B)intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C)intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
D)intx[][3]={1,2,3,4};
*(3)有以下程序:
main()
{intx[3][2]={0},i;
for(i=0;i<3;i++)scanf("%d",x[i]);
printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);
}
若运行时输入:
246<回车>,则输出结果为()。
B
A)200B)204C)240D)246
(4)下列选项中,能够正确定义数组的语句是()。
D
A)intnum[0..2008];B)intnum[];
C)intN=2008;D)#defineN2008
intnum[N];intnum[N]
(5)下列定义数组的语句中,正确的是()。
B
A)int N=10; B)#defineN10
int x[N]; intx[N];
C)int x[0..10]; D)intx[];
(6)若要定义一个具有5个元素的整型数组,以下错误的定义语句是()。
D
A)int a[5]=﹛0﹜; B)int b[]={0,0,0,0,0};
C)int c[2+3]; D)int i=5,d[i];
(7)若有定义语句:
inta[3][6];按在内存中的存放顺序,a数组的第10个元素是()。
B
A)a[0][4] B)a[1][3] C)a[0][3] D)a[1][4]
(8)若有定义:
inta[2][3];,以下选项中对a数组元素正确引用的是()。
D
A)a[2][!
1]B)a[2][3]C)a[0][3]D)a[1>2][!
1]
(9)若有定义语句:
intm[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是()。
C
A)m[--i] B)m[2*2] C)m[m[0]] D)m[m[i]]
(10)有以下程序
main()
{
inti,t[][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<3;i++)printf(“%d”,t[2-i][i]);
}
程序的执行后的输出结果是()。
B
A)753 B)357 C)369 D)751
*(11)有以下程序
voidf(intb[])
{inti;
for(i=2;i<6;i++)b[i]*=2;
}
main()
{inta[10]={1,2,3,4,5,6,7,8,9,10},i;
f(a);
for(i=0;i<10;i++)printf(“%d,”,a[i]);
}
程序运行后的输出结果是()。
B
A)1,2,3,4,5,6,7,8,9,10,
B)1,2,6,8,10,12,7,8,9,10
C)1,2,3,4,10,12,14,16,9,10,
D)1,2,6,8,10,12,14,16,9,10,
(12)有以下程序
#include
main()
{ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;
for(i=0;i<12;i++)c[s[i]]++;
for(i=1;i<5;i++)printf(“%d”,c[i]);
printf(“\n”);
}
程序的运行结果是()。
C
A)1234B)2344C)4332D)1123
*(13)有如下程序:
#include
voidfun(inta[],intn)
{inti,t;
for(i=0;i } main() {intk[10]={1,2,3,4,5,6,7,8,9,10},i; fun(k,5); for(i=2;i<8;i++)printf("%d",k[i]); printf("\n"); } 程序的运行结果是()。 D A)345678B)876543 C)1098765 D)321678 (14)有以下程序 #include main() { int a[]={2,3,5,4},i; for(i=0;i<4;i++) switch(i%2) { case 0: switch(a[i]%2) {case 0: a[i]++;break; case 1: a[i]--; }break; case 1: a[i]=0; } for(i=0;i<4;i++) printf("%d ",a[i]); printf("\n"); } 程序运行后的输出结果是()。 C A)3 3 4 4 B)2 0 5 0 C)3 0 4 0 D)0 3 0 4 (15)有以下程序 #include main() {inta[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0 for(i=0;i<5;i++)s=s+a[b[i]]; printf("%d\n",s); } 程序运行后的输出结果是()。 C A)6B)10C)11D)15 *(16)有以下程序 #include main() {charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,r[]=”abcde”; strcpy(p+strlen(q),r);strcat(p,q); printf(“%d%d\n”,sizeof(p),strlen(p)); } 程序运行后的输出结果是()。 C A)209 B)99 C)2011 D)1111 *(17)有以下程序 #include main() {charp[20]={‘a’,’b’,’c’,’d’},q[]=”abc”,r[]=”abcde”; strcat(p,r);strcpy(p+strlen(q),q); printf(“%d\n”,strlen(p)); } 程序运行后的输出结果是()。 B A)9 B)6 C)11 D)7 (18)若有定义语句: char s[10]=”1234567\0\0”;,则strlen(s)的值是()。 A A)7 B)8 C)9 D)10 (19)设有定义: chars[81];inti=0;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()。 C A)gets(s); B)while((s[i++]=getchar())! ='\n');s[i]='\0'; C)scanf("%s",s); D)do{scanf("%c",&s[i]);}while(s[i++]! ='\n');s[i]='\0'; (20)有以下程序 #include main() { char s[]={"012xy"};int i,n=0; for(i=0;s[i]! =0;i++) if(s[i]>'a'&&s[i]<='z') n++; printf("%d\n",n); } 程序运行后的输出结果是()。 B A)0 B)2 C)3 D)5 (21)有以下程序 #include #include main() { char a[10]="abcd"; printf("%d,%d\n",strlen(a),sizeof(a)); } 程序运行后的输出结果是()。 B A)7,4 B)4,10 C)8,8 D)10,10 (22)有以下程序 #include<stdio.h> #include<string.h> main() {charx[]=”STRING”; x[0]=0;x[1]=’\0’;x[2]=’0’; printf(”%d %d\n”,sizeof(x),strlen(x)); } 程序运行后的输出结果是()。 B A)6 1 B)7 0 C)6 3 D)7 1 (23)下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST"要求的是()。 A A)if(strcmp(s2,s1)==0)ST; B)if(sl==s2)ST; C)if(strcpy(sl,s2)==1)ST; D)if(sl-s2==0)ST; (24)有以下程序(strcat函数用以连接两个字符串) #include<stdio.h> #include<string.h> main() {chara[20]=”ABCD\OEFG\0”,b[]=”IJK”; strcat(a,b);printf(”%s\n”,a); } 程序运行后的输出结果是()。 B A)ABCDE\OFG\OIJK B)ABCDIJK C)IJK D)EFGIJK (25)有以下程序 main() {inta[4][4]={{1,4,3,2,},{8,6,5,7,},{3,7,2,5,},{4,8,6,1,}},i,j,k,t; for(i=0;i<4;i++) for(j=0;j<3;j++) for(k=j+1;k<4;k++) if(a[j][i]>a[k][i]){t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/ for(i=0;i<4;i++)printf(“%d,”,a[i][j]); } 程序运行后的输出结果是()。 A A)1,2,5,7, B)8,7,3,1, C)4,7,5,2, D)1,6,2,1, (26)有以下程序 main() {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++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第六 习题 答案