c语言程序设计期末(A)标准答案及评分标准
呼和浩特职业学院《c语言程序设计》期末考试试题(A)
标准答案及评分标准
~
一、选择题( 每题2分×20=40分 )
1.一个C语言程序是由( b )
A) 一个函数组成 B) 若干函数组成
C) 若干个过程组成 D) 若干子程序组成
2. 结构化程序由哪三种基本结构组成( d )
A) 顺序、分支、函数 B) 分支、循环、过程
C) 顺序、循环、过程 D) 顺序、分支、循环
3. 下面正确的自定义标识符是( a )
A) a2b3 B) int C) ab& D) 2a3b
4.设C语言中的一个int 型数据在内存中占2个字节,则int 型数据的取值范围为( b )
A) -256—255 B) -32768—32767 C) 0—65535 D) 0—2147483647
5.设x=2.5,a=7,y=4.7,表达式x+a%3*(int)(x+y)%2/4的值为( c )
A) 2.75 B) 5 C) 2.5D) 3.75
6.执行以下程序后,a的值为( d )。
int *p, a = 10, b=1;
p = &a; a = *p + b;
A) 12 B) 编译出错 C) 10 D) 11
7. 若定义a[ ][2]={1,2,3,4,5,6,7,8}; 则a数组中行的大小是( c )。
A) 2 B) 3 C) 4 D) 无确定值
8.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else语句总是与(d)匹配。
A)缩进位置相同的ifB)同一行上的if
C)其之后最近的ifD)其之前最近的if
9. 设有以下说明语句则下面的叙述中不正确的是struct ex {
int x ;
float y;
char z ;
} example;A) struct结构体类型的关键字 B) example是结构体类型名C) x,y,z都是结构体成员名 D) ex是结构体类型名 函数调用:strcat(strcpy(str1,str2),str3)的功能是A) 将串str1复制到串str2中后再连接到串str3之后B) 将串str1连接到串str2之后再复制到串str3之后C) 将串str2复制到串str1中后再将串str3连接到串str1之后D) 将串str2连接到串str1之后再将串str1复制到串str3中 在C语言中,合法的字符常量是A) “ab” B) "\0" C) 'ab' D) 'a'
13. 下述对C语言字符数组的描术中错误的是 ? ?A)字符数组可以存放字符串 B)字符数组中的字符串可以整体输入、输出 C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较“%d\n”, d=a>b?(a>c?a: c): b);
}
A) 6 B) 5 C) 4 D) 不确定
15.C语言规定,简单变量作为实参时,它和对应形参之间的数据传递方式是( b)
A) 地址传递
B) 单向值传递
C) 由实参传给形参,再由形参传回给实参
D) 由用户指定传递方式
16. 若变量c为char类型,能正确判断出c为小写字母的表达式是A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z')
17. 已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值
为 2、k的值为3,以下选项中正确的输入语句是( c )
A) scanf(“%2d%2d%2d”,&i,&j,&k);
B) scanf(“%d %d %d”,&i,&j,&k);
C) scanf(“%d,%d,%d”,&i,&j,&k);
D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);
18. 以下说法中正确的是C语言程序总是从第一个的函数开始执行 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行 D) C语言程序中的main()函数