c语言程序设计础的考试题
程序设计基础(考试题)
读程序,写出程序的执行结果
1.若a是int型变量,且a=5,则下面表达式的值为:____3_______。
(a+100)%2+a/2
2. C语言程序中引用标准输入输出库函数,必须在每个源文件的首部写下#include <___stdio.h_____________>。
3.若int型变量占内存2个字节,double型变量占内存8个字节,有如下定义:
union data
{ int i;
double d;
}a;
则变量a在内存中所占字节数为____8_____。
4.C语言中用于结构化程序设计的三种基本结构是(A )
??? A)顺序结构、选择结构、循环结构??? B)if、switch、break
??? C)for、while、do-while??????????? D)if、for、continue
5.以下选项中合法的用户标识符是( B)
A)long B)_2Test C)3Dmax D)A.dat
6.以下非法的赋值语句是(C )
A) n=(i=2,++i) B) j++; C) ++(i+1) D) x=j>0
7.C语言中,基本数据类型包括整型、浮点型和_字符型_________。
8.一个C程序是由____函数_______组成的。
9.在abc、a_1、a1b2、auto四个变量中,不合法的是__auto_______。
10.字符串"ab\\c\n\101"的占用内存的字节数为___6_____。
11.在运算符+、->、*=、&&中,其优先级最低的是__*=______。
12.定义共用体类型使用关键字____union________。
13.C语言中,break语句通常用在___switch_____语句和循环语句中。
14.表达式7*2/5+3.5+'b'值的类型是___double的实数型_______。
15.设有语句int a=5;执行语句printf("%d",++a);后,输出结果为_6________。
16.执行下面程序段后,输出的结果为___****______。
for(i=1;i<5;i++) printf("*");
17.能将高级语言编写的源程序转换为目标程序的软件是( D)
A)汇编程序??? B)编辑程序??? C)解释程序??? D)编译程序
18.设有定义语句:char str[][20]={"Hello",Beijing"},*p=str; 则printf("%d\n",strlen(p+20));输出
结果是(C )
A)0 B)5 C)7 D)20
19. 若有以下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c>0)
s=a; for(b=1;b<=c;b++) s=s+1; 则与上述程序段功能等价的赋值语句是(?B )
A)s=a+b;??? B)s=a+c;??? C)s=s+c;??? D)s=b+c;
20. 下列运算符优先级最高的是(A?)?????????????????
??? A)()??????? B)? +?????? C)? &&??????? D)? !=
21.C语言程序总是从源程序文件中的第一个函数开始执行。( 错 )
22.数组名代表数组所占存储区的首地址,其值不可以改变。( 对 )
23.elseif不属于C语言关键字(保留字)( 对 )
24.指针变量可以加减一个整数。( 对 )
25.宏替换不占用运行时间。(对 )
26.C语言中转义字符以"\"开头。(对 )
27.C语言规定,函数返回值的类型是由return语句中的表达式类型决定的。( 错 )
28.如果在一个函数中的复合语句中定义了一个变量,则该变量只在该复合语句中有效。( 对 )
29.C语言中的函数既可以递归定义,又可以嵌套定义。( 错 )
10.main函数可以有参数。( 对 )
30. 对于int x=12, y=8;? printf (“%d%d%d”, !x, x || y, x&&y); 输出的结果是(A?)
??? A)0 1 1????? B)0 1 0????? C)0 0 0???? D)1 1 1
31.下程序段:? char? s[20 ]="abcd",? *sp=s; strcat(sp,"ABCD"); puts(sp); 的输出结果是(A?)
A) abcdABCD??? B) ABCDabcd??? C) ABCD??? D) abcd
32.下列错误的表达式是(B?)
A)-x++??? B)(-x)++??? C)x+++