C_5练习题答案
一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。)
1.以下不正确的C语言标识符是(C)
A. AB1
B._ab3
C. char
D. a2_b
- 若 x、i、j、k都是 int型变量,则计算下面表达式后,x的值为(A)
x=i=4.j=6,k=16;
A. 4
B. 8
C. 16
D. 32
3,对于类型相同的两个指针变量之间,不能进行的运算是?
A. <
B.=
C.+
D.-
- 下设i 和 x 都是 int 类型,则 for 循环语句(A)
for(i=0,x=0;i<=9&&x!=876;i++) scanf(“%d”,&x);
A. 最多执行 10 次
B. 最多执行 9 次
C. 是无限循环
D. 循环体一次也不执行
5,下列数组定义正确的是(D)
A. int a[5],b[2,3];
B. char no(30);
C. char x[];
D. int x[5]={1,2,3};
- 若有变量定义 double x;float a;要给 x 和 a 输入数据,正确的输入语句是(C)
A. scanf(“%Pf”,&x,&a);
B. scanf(“%f%lf”,&x.&a);
C.scanf(“%lf%f”,&x,&a);
D. scanf(“%lf%lf”,&x,&a);
7.若变量已正确定义,执行语句scanf("%d,%d,%d ",&kl,&k2,&k3);时,(D)的输入。
A. 2030,40
B. 20 30 40
C. 20,30 40
D. 20,30,40
- 已知 a=20,b=30,则执行 c=anb 后,c 的值是(A)
A. 10
B. 20
C. 30
D. 40
-
下面程序的输出结果是(A)
#include<stdio.h>
void main
{ intx=10,y=10;
printf(“%d %dn”,x–,–y);
}
A. 10 9
B. 9 9
C. 9 10
D. 10 10 -
如果在一个函数的复合语句中定义了一个变量,则该变量(A)
A.只在该复合语句中有效,在该复合语句外无效
B. 在该函数中任何位置都有效
C.在本程序的源文伴范围内均有效
D.此定义方法错误,其变量为非法变量
- 以下函数值的类型是(D)
int fun(float x)
{
float y;
y=3*x-4;
return y:
}
A. 不确定
B. float
C. void
D. int
12,函数说明语句正确的是(B)
A. int Function(void A);
B. void Function(int);
C. int Function(A):
D.void Function(int)
13,函数调用语句: d=max(a,max(b.c.d),e):中实参的个数为C
A.1
B. 2
C. 3
D. 4
14.以下能正确定义数组并正确赋初值的语句是(D)
A. intn=5,a[3][n];
B. int b[1][5]={ {1},{3}};
C. int c[2]0={ {1,2},{3,4}}:
D. int d[][2]={ {1,2},{3,4)};
15,下列程序运行后的输出结果是(A)
#include <stdio.b>
void sub(int x,int y,int *z)
{*z=y-x; }
void main()
{ int a,b,c;
sub(10,5,&a);
sub(7,a,&b);
sub(a,b,&c);
printf(“%d,%d,%dln”,ab,c);
}
A.-5,-12,-7
B. 5,-2,-7
C.-5,-12,-17
D. 5,2,3
- 设有定义语句"chars]=“xyz”;“,则表达式”*(s+3)"的值是(D)
A. ‘x’
B. у
C. ‘z’
D. ‘\0’
- 若有定义:int a[3][4];,(D)不能表示数组元素 a[1][1]
A. (a[1]+1)
B. (&a[1][1])
C. ((a+1)[1])
D. *(a+5)
- char *s=“ItlNamellAddressin”;指针s所指字符串的长度为(D)
A.说明不合法
B. 19
C. 18
D. 15
19,已知有宏定义#define SQR(a) 2aa,则SQR(3+4)的值为(A)
A. 22
B. 32
C. 98
D. 18
- 定义结构体的关键字是(A)
A. struct
B. typedef
C. Enum
D. Union
二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结果填写在答题纸的相应位置上。)
1____a=3,b=2___
#include <stdio.h>
int main() {
int x = 1, a = 1, b = 1;
switch (x) {
case 0:
b++;
case 1:
a++;
case 2:
a++;
b++;
break;
}
printf("a=%d, b=%d\n", a, b)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!