C语言清考 下载本文

内容发布更新时间 : 2024/5/18 17:42:33星期一 下面是文章的全部内容请认真阅读。

《高级语言程序设计》

班级: 学号: 姓名: 题 号 一 二 三 四 五 总 分 得 分

一、 选择题(每空2分,共30分) 1、下面标识符中正确的标识符是:( ) A. t=2 B. a+ C. 5c D. c5 2、“\\n”在内存中占用的字节数是:( ) A. 0 B. 1 C. 2 D. 3

3、设有语句 int x=4; 则执行 x *= x 后,变量x 的值为:( ) A. 0 B. 4 C. 8 D. 16

4、设a,b均为1,执行(a =0)&& (b =4) 后,a,b的值为:( A. 0,0 B. 4,4 C. 0,1 D. 1,0 5、下列运算符的优先级最高的是( ) A. 关系运算符 B. 算术运算符 C. 赋值运算符 D. 逻辑运算符 6、以下描述正确的是:( )

A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数定义和函数的调用均不可以嵌套 D. 函数的定义和函数的调用均可以嵌套` 7、getchar函数可以从键盘上读取:( )

A. 整型值 B. 实型值 C. 字符串 D. 单个字符 8、若有定义:char c[4]={?a?,?a?,?a?};则数组中第4个数为:( )A. ?a? B. 4 C. ?\\0? D. 随机数 9、变量的指针,其含义是指该变量的:( )

A. 值 B. 地址 C. 名 D. 使用形式 10、若有以下语句,则输出结果为:( )

char s[6]={?a?,?b?,?c?,?d?,?\\0?} printf (“%s”, s);

A. ab cd B. abcd C. ab D. cd

11、若有说明:int b[3][2];则对数组元素的非法引用是:( ) A. b[0][0] B. b[1+1][1] C. b[1][2] D. b[5-3][1]

共5页(第1页)

) 12、在C语言中,要求运算对象必须是整型的运算符是:( )

A. / B. ++ C. != D. % 13、下面哪种变量在内存中占用的字节数不是4:( ) A. long B. int C. unsigned long D. float 14、若有:struct ss

{ int x; float y; } a;

则系统对a变量分配的存储空间有( )个字节; A. 6 B. 10 C. 14 D. 16

15、C语言中char型数据在内存中是以( )形式存储。 A.原码 B.补码 C.反码 D.ASCII码

二、填空题:(每空2分,共20分)

1、表达式“2 = = 3 ”的值是 。 2、若有定义:enum xx { ab, bc=3, cd}

则ab的值为 ,cd的值为 。

3、设有定义:#define F(N) 3*N 则表达式 F(2)的值是 ,表达式F(1+1) 的值是 。

4、若有定义:int x[][3]= {1, 2, 3, 4, 5, 6}; 则数组元素x[0][2] 的值为 ,x[1][1]的值为 。

5、设有 char *c= “good”; 则printf (“%s”, c); 的输出结果为 ,printf (“%c”, *c); 的输出结果为 。 6、已知:union

{ char a; int b; float c; } x; 则sizeof (x) 的值是 ;

三、程序阅读题

1、阅读下列程序,写出输出结果

main() { int i, j;

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

printf (“*”);

} 输出结果为:

共5页(第2页)

2、阅读下列程序,写出输出结果

main () { int x;

for ( x= 1; x<3; x++) { switch (x)

{ case 1: printf (“apple\\n”);

case 2: printf (“orange\\n”); } }

} 输出结果为:

3、阅读下列程序,写出输出结果

main () { int x;

for ( x= 1; x<3; x++) { switch (x)

{ case 1: printf (“apple\\n”); break;

case 2: printf (“orange\\n”); } } }

4、阅读下列程序,写出输出结果

void fun ( int x, int *y ) { x= 2*x; *y= 2*y; }

main () { int x, y; x= 5; y=5; fun (x, &y);

printf (“x=%d,y=%d”, x, y); }

输出结果为:

共5页(第3页)

5、读下列程序,写出程序的输出结果。

#include int main()

{ int k=4,n=0; while(k--); n++;

printf(\return 0; }

输出结果为::1-1

注意:k的值

四、程序填充题(共18分,每空3分) 1、输出2-50之间所有素数

(仔细阅读如下程序,请在下划线处将程序填充完整)。 main()

{ int a, b, f;

for (a=2; (1) ; a++) { (2) ; for (b=1; b<=a; b++) if (a%b= =0) f++;

if ( (3) ) printf (“%d”, a); } }

2、输入一小写字母,将其以大写字母输出。(例:输入b, 输出B)。 (仔细阅读如下程序,请在下划线处将程序填充完整) #include “(1) ” main()

{ (2) ;

c= getchar();

c= (3) ;

putchar (c ); }

五、编程题(共20分,每小题10分) 1、输入两个整数,求最大公约数;(10分)

共5页(第4页)

2、输入一行字符,输出其中小写字母的个数;(10分)

共5页(第5页)