C语言程序设计试题及答案(三) 下载本文

内容发布更新时间 : 2024/6/16 21:58:39星期一 下面是文章的全部内容请认真阅读。

C语言程序设计试题及答案(三)

学号: 学习中心名称: 专业: 层次: 姓名:

题总一 二 三 四 五 六 七 八 九 十 号 分 得 分 注意:所有答案都要写在答题卡上 一、单项选择题(20分,每题2分)

1.执行下列程序段后,正确的结果是(B) int k, a[3][3] = {1,2,3,4,5,6,7,8,9}; for(k=0; k<3; k++)

printf(“-”, a[k][k]);

A) 1 2 3 B) 1 5 9 C) 1 4 7 D) 3 6 9

2.若a是int类型变量,则计算表达式a=25/3%3的值是:(B)

A)3 B)2 C)1 D)0

3.下面正确的字符常量是:(C)

A)“c” B)‘\\\\’’ C)‘W’ D)‘’ 4. C语言中,运算对象必须是整型的运算符是:(B)

A)% B)/ C)* D)+ 5.数字字符0的ASCII值为48,若有以下程序

main() {

char a='1', b='2'; printf(\ printf(\ }

程序运行后的输出结果是。(B) A) 3,2 B)50,2 C)2,2 D)2,50 6.以下语句或语句组中,能正确进行字符串赋值的是。(D)

A)char *sp;*sp=\ B)char s[10];s=\ C)char s[10];*s=\ D)char *sp=\ 7.for(i=0;i<10;i++)

if(i〈=5〉 break;

则循环结束后i的值为(B)

A)0 B)1 C)5 D)10 8.执行下列程序段后,正确的结果是(C) char x[8] = {8,7,6,5,0,0}, *s;

s = x+1;

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

A) n B) 0 C) 5 D) 6

9.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是:A

A)单向值传递 B) 地址传递 C) 相互传递 D) 由用户指定方式 10.设有数组定义:char str[]=”China”;则下面的输出为(C)

printf(“%d”,strlen(str));

A)4 B)5 C)6 D)7

二、填空题(30分,每空2分)

1.下列程序段的输出结果是 3 。 int i=19, j; j=i%4;

printf(“% d”, j);

2.已知fun1函数的功能是将三个数按由大到小的顺序调整后依次放入a,b,c三个变量中,其中a存放最大的数,利用fun2函数填空完成此功能。 void fun2(int *x,int *y) {

int t;

t=*x; *x=*y; *y=t; }

void fun1() {

int a=20, b=30, c=25;

if(c>b) fun2(__&c,&b____); if(a

3.已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是 1 B 。 #include

main() {

char a,b;

a=getchar();

scanf(\

a=a-'A'+'0';

b=b*2;

printf(\

}

4.以下程序运行后的输出结果是 4 3 5 。

main() {

int a=3,b=4,c=5,t=99;

if(b

5.若已知a=10,b=20,则表达式!a

s%2+(s+1)%2

7.下面程序将字符数组a复制到字符数组b中。

main() {

char a[]=\ int i;

for(i=___0____;a[i]!='\\0';i++) {

__b[i]=a[i]___________; }

__b[i]=’\\0’__; }

8.若有int a[3][2] = {{1},{3,2},{4,5}};,则a[1][1]的值是 2 。 9.有以下程序,执行后输出结果是 0 。

main( ) {

int t=1,i=5;

for(;i>=0;i--) t*=i; printf(\ } 10.在循环语句中,break语句的作用是 是用来跳出当前一层循环的 ,continue语句的作用是 终止本次循环。

三、写出程序的运行结果(30分,每题10分)

1.写出程序运行后的输出结果 main()

{

int a=1,b;

for(b=1;b<=10;b++) {