C语言题库-第五章.doc
文本预览下载声明
选择
1, 有以下程序,程序运行后的输出结果是( )
#include stdio.h
#include string.h
int main()
{
char a[20]=”ABCD\0EFG\0”,b[]=”IJK”;
strcat(a,b); printf(“%s\n”,a);
return 0;
}
A.ABCDE\0FG\0IJK
B.ABCDIJK
C.EFGIJK
D.IJK
2, 有以下程序,程序运行后的输出结果是 ( )
#includestdio.h
int main()
{ char s[]=012xy\08s34f4w2;
int i, n=0;
for(i=0;s[i]!=0;i++)
if(s[i]=0s[i]=9) n++;
printf(%d\n,n);
return 0;
}
A.7
B.0
C.8
D.3
3, 下列选项中,能够满足若字符串s1等于字符串s2,则执行ST要求的是 ( )
A.if(strcmp(s2,s1)==0)ST;
B.if(s1-s2==0)ST;
C.if(strcpy(s1,s2)==1)ST;
D.if(s1==s2)ST;
4, 以下选项中正确的语句组是( )
A.char s;s={BOOK!};
B.char s[];s=BOOK!;
C.char s[10];s=BOOK!;
D.char s[]=BOOK!;
5, 以下数组定义中错误的是( )
A.int x[2][3]={{1,2},{3,4},{5,6}};
B.int x[2][3]={1,2,3,4,5,6};
C.int x[][3]={0};
D.int x[][3]={{1,2,3},{4,5,6}};
6, 若有定义语句:int m[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是 ()
A.m[m[0]]
B.m[2*2]
C.m[--i]
D.m[m[i]]
7, 下列选项中,能正确定义数组的语句是( )
A.int num[];
B.int N=2008;
int num[N];
C.int num[0…2008];
D.#define N 2008
int num[N];
8, 有以下程序,程序运行时若输入:how are you? I am fine回车则输出结果是( )
#includestdio.h
int main()
{ char a[30],b[30];
scanf(%s,a);
gets(b);
printf(%s\n %s\n,a,b);
return 0;
}
A.how are you?
I am fine
B.how are you? I am fine
C.how
are you?I am fine
D.how are you?
9, 下面是有关C语言字符数组的描述,其中错误的是( )
A.不可以用赋值语句给字符数组名赋字符串
B.可以用输入语句把字符串整体输入给字符数组
C.字符数组中的内容不一定是字符串
D.字符数组只能存放字符串
10, 有以下程序,程序运行后的输出结果是( )
#include stdio.h
#include string.h
int main()
{
char x[]=”STRING”;
x[0]=0;x[1]=\0;x[2]=0;
printf(“%d %d\n”,sizeof(x),strlen(x));
return 0;
}
A.7 0
B.6 1
C.7 1
D.6 3
11, 若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )
A.int a[5]={0};
B.int b[]={0,0,0,0,0};
C.int i=5,d[i];
D.int c[2+3];
12, 有以下程序,程序运行后的输出结果是 ( )
#includestdio.h
#includestring.h
int main()
{ char a[5][10]={“china”,”beijing”,”you”,”tiananmen”,”welcome”};
int i,j; char t[10];
for(i=0;i4;i++)
for(j=i+1;j5;j++)
if(strcmp(a[i],a[j])0)
{ strcpy(t,a[i]); strcpy(a[i],a[j]); strcpy(a[i],t);}
puts(a[3]);
return 0;
}
A.china
B.beijing
C.welcome
D.tiananmen
BDADA ADCCC CC
程序设计
1, /*编写函数int fun(int lim, i
显示全部