C语言程序设计考试试卷

  • 格式:pdf
  • 大小:165.19 KB
  • 文档页数:4

C语言程序设计考试试卷题号三四五六七八总分阅卷人

得分

一、单项选择题(每题2分,共30分)

1、下列可用于c语言用户标识符的一组是.

A、void、deHne、WORD B、a3_3> _123、car

C、For、-abc^ IF CaseD> 2a^ DO、sizeof

2、在C语言中,运算对象必须是整型数的运算符是»

A、% B、\ C、%和\ D、/

3、已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中

的大写字母转换成对应小写字母的语句是.

A、c=(c-'A')%26+'a'c=c+32

C、c=c-,A,+,a,D、c=(c+'A,)%26-'a'

4、设有定义:intk=0;以下选项的四个表达式中与其他三个表达式的值不相同的是。

A、 k++ B、 k+=l C、 ++k D、 k+1

5、以下选项中,当x为大于1的奇数时,值为0的表达式是 o

A、x%2==l B、x/2 C、x%2!=0 D、x%2==0

6、下列关于字符串常量的说法中错误的是 o

A、在C语言中,没有专门用来定义字符串变量的关键字

B、'\0,作为标志占用存储空间,计入串的实际长度

C、在表示字符串常量的时候不需要人为在其末尾加入,\0,

D、在C语言中,字符串常量隐含处理成以,\0,结尾

7、在执行以下程序后,输出,#,号的个数是 o

#include

main()

( int ij;

for(i=l;i<5;i++)

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

putchar('#');

}

A、4个 B、5个 C、6个 D、7个

8、设已定义i和k为int型变量,则以下for循环语句 o

for(i=0,k=-l; k=l; i++,k++) printf(“ * * * *\n ”) •

A、判断循环结束的条件不合法B、是无限循环

C、循环一次也不执行D、循环只执行一次

9、下述程序的输出结果是 o

#include

main()

( int y=10;while(y-);

printf(ny=%dM,y);

}

A、y=0B、y=lC、y 是随机值D、y= -1

10、以下程序运行后的输出结果是 o

#include

main()

( int i,m=0,n=0,k=0;

for(i=9;i<=ll;i++)

switch(i/10)

( case 0: m++;n++;break;

case 1: n++;break;

default: k++;n++;

}

printf(n %d %d %d\n,,,m,n,k);

}

A> 1 3 2B、1 3 0C、1 0 3D、1 2 3

11、要求以下程序的功能是计算:s=l+l/2+l/3+....+l/9+l/10

#include

main()

( int n; float s;

s=1.0;

for(n=10;n>l;n—)

s=s+l/n;

printf(H%6.4ftn,\s);

}

程序运行后出现结果错误,导致程序错误结果的程序行是 O

A、s=1.0 B、for(n=10;n>l; n-) C、s=s+l/n; D、printf("%6.4f\n",s);

12、以下不能正确定义二维数组的是。

A、inta[2][2]={{l},{2}); B、int a[][2]={l,2,3,4};

C、inta[2][2]={{l},2,3}; D、int a⑵[]={{1,2},{3,4}}

13、下列选项中正确的语句组是。

A、char s|8]; s={"Beijing”}; B、char *s; s={uBeijingw};

C、char s[8]; s=uBeijingw; D、char s="Beijing”;

14、以下能正确定义一维数组的是 o

A、int num[];B、#define N 100

int num[N];

C、int num|0...100|;D、int N=100;

int num[N];

15、当执行下面的程序时,如果输入ABC,则输出结果是。

#include

main()

(charss[10]=Ml,2,3,4,5n;A、ABC6789B、ABC67 C、12345ABC6D、ABC456789

1*1=1 2*1=2 3»1=3 何:4 5*1=$ M 「中? *2=1484*8诚寸6 W 9*2=182*2=4 掀4 4*24 5*2=18 3*3=9 4*3=12 5«345蜘8 »3=21 SH=28

7«4=288«45*5=25 6«5=38 ?*5=35 心7*6=42 ?*?=498648 M部 8«H4心4 g 9中?2 94*81gets(ss);

strcat(ss,M6789M);

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

二、程序填空题(每空10分,共40分)

1、设计一个程序,从键盘输入3个整数,按由小到大的顺序输出,请将程序补充完整。

#include

main()

int x,y,z,temp;

printf(MInput x,y,z=n);

scanf(H %d,%d,%d”,&x,&y,&z);

if(x>y) (____________________

if(x>z) {temp=x; x=z; z=temp;

if(y>z) (temp=y; y=z; z=temp;

printf(H %d,%d,%d\n'\x,y,z);

2、输出如下图所示的九九乘法表,请完成程序。

#include

main()

( int ij;

for(i=l;i<=9;i++)

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

printf(“%d*%d=%d\t", i,j, );

}

3、求一维数组中的最大值,请将程序补充完整。

#include main()

( int i,max,a[10];

printf("input 10 numbers:\n ");

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

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

for(i=l;i<10;i++)

printf(nmax=%d\nu,max); }三、综合题(每题10分,共30分)

1、请修改下面的程序,使其能够通过编译。

#include

Main() ( int a=6;b=8;

int c;

c=a*b;

printf(3 4 5 6%d\c);

)

2、写出下列程序的运行结果。

#include

main()

( int i,sum=0;

for(l=l;i<=100;i++) sum=sum+i;

printf("%d\n”,sum);

}

运行结果:_______________

3写出下列程序的运行结果。

#include main()

( inti,x[3][3]={l,2,3,4,5,6,7,8,9};

for(i=0;i<3;i++) printf(M%d ”,x[i][2・i]);

)

运行结果:________________