C语言复习题 下载本文

main( )

{ char ss[10]=\gets(ss); printf(\%s\\n\}

A.ABC B.ABC9 C.123456ABC D.ABC456789 10.以下程序执行后的输出结果是( )。 #include \main( )

{ char ch[7]={\ int i,s=0;

for(i=0;ch[i]>='0' && ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf(\ }

A.2ba56 B.6 C.6521 11.运行下面的程序,如果从键盘上输入: ab<回车> c <回车> def<回车>

则输出结果为( )。 #include #define N 6 main( )

{ char c[N]; int i=0;

for( ;i

for( i=0;i

A.a B.a C.ab b b c c c d d d e f

12.以下程序运行的输出结果是( )。 #include \main( )

{ char ch[2][5]={\ int i,j,s=0;

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

s=10*s+ch[i][j]?'0'; printf(\%d\\n\ }

D.62 D.abcdef

A.6385 B.68 C.6982 13.以下程序执行后的输出结果是( )。 #include \

void swap (int c0,int c1) { int t;

t=c0;c0=c1;c1=t; }

main( )

{ int b[2]={3,5}; swap(b[0],b[1]);

printf(\%d %d\\n\}

A.5 3 B.3 5 C.3 3 14.以下程序执行后的输出结果是( )。 #include \void func1(int i); void func2(int i);

char st[]=\void func1(int i)

{ printf(\%c\ if(i<3){i+=2;func2(i);} }

void func2(int i)

{ printf(\%c\ if(i<3){i+=2;func1(i);} }

main( )

{ int i=0; func1(i); printf(\ A.hello B.hel C.hlo 15.以下程序段的输出结果是( )。 #include main( )

{ char s1[10], s2[10], s3[10], s4[10]; scanf(\%s%s\puts(s1); puts(s2); puts(s3); puts(s4); }

输入数据如下:(此处< Enter >代表回车符) aaaa bbbb cccc dddd< Enter > A.aaaa B.aaaa bbbb bbbb cccc cccc cccc dddd

D.693825 D.5 5 D.hlm C.aaaa bbbb dddd

dddd D.aaaa bbbb cccc dddd

16. 以下程序程序运行后的输出结果是( )。 #include \ main()

{char p[20]={ 'a', 'b', 'c', 'd'},q[]={\char r[]=\

strcpy(p+strlen(q), r); strcat(p , q); printf(“%d %d\\n”,sizeof(p),strlen(p)); }

A.20 9 B.9 9 C.20 11 D.11 11 17. 不能把字符串Hello!赋给数组b的语句是( )。

A. char b[10]={'H' , 'e' , 'l' , 'l' , 'o' , '!'}; B. char b[10];b=\C. char b[10];strcpy(b,\ D. char b[10]=\18. 执行下面的程序段后,变量k中的值为()。 int k=3, s[2];

s[0]=k; k=s[1]*10; A. 不定值 B. 33 C.30 D. 10 19. 以下程序执行后输出结果是()。 main()

{ int x[8]={8, 7, 6, 5, 4, 3}, *s; s=x+3;

printf(\}

A. 随机值 B. 3 C. 5 D. 6 20. 以下程序的输出结果是()。

A. 18 B. 19 C. 20 D)21 main()

{ int a[3][3]={ {1,2},{3,4},{5,6} }, i, j, s=0; for(i=1; i<3; i++)

for(j=0; j<=i; j++) s+=a[i][j]; printf(\ }

21. 以下程序的输出结果是()。 main()

{ char w[][10]={ \for(k=1; k<3; k++) printf(\}

A. ABCD B. ABCD FGH EFG KL IJ M

C. EFG D. EFGH JK IJKL O

22. 以下不能正确进行字符串赋初值的语句是()

A. char str[5]=\ B. char str[]=\C. char *str=\D.char str[5]={'g', 'o', 'o', 'd'}; 23. 给出以下定义: char x[]=\

char y[]={'a','b','c','d','e','f','g'}; 则正确的叙述为

A)数组X和数组Y等价 B)数组x和数组Y的长度相同

C)数组X的长度大于数组Y的长度 D)数组X的长度小于数组Y的长度 24. 若有以下说明:

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g;

则数值为4的表达式是

A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]

25. 执行下面的程序段后,变量k中的值为 int k=3, s[2];

s[0]=k; k=s[1]*10;

A) 不定值 B) 33 C) 30 D) 10

26. 在C语言中,引用数组元素时,其数组下标的数据类型允许是 A)整型常量 B)整型常量或整型表达式 C)整型表达式 D)任何类型的表达式 27.以下对一维整型数组a的正确说明是 。(0级) A)int a(10); B)int n=10,a[n]; C)int n; scanf(“%d”,&n); int a[n]; D ) #define SIZE 10 int a[SIZE]; 28、

3.以下能对一维数组a进行正确初始化的语句是 。 A)int a[10]=(0,0,0,0,0); B)int a[10]={ };

C)int a[ ]={0}; D)int a[10]={10*1};

29. 下列定义正确的是 。

A) static int a[]={1,2,3,4,5} B) int b[1]={2,5} C) int a(10) D) int 4e[4] 30. 设有char str[10],下列语句正确的是 。

A) scanf(\ B) printf(\ C) printf(\ D) printf(\

31. 假设array是一个有10个元素的整型数组,则下列写法中正确的是

A) array[0]=10 B) array=0 C) array[10]=0 D) array[-1]=0 32. 分析下列程序 main()

{int n[3],i,j,k;

。 。