第一卷。第一部分:
选择题(20项,共40分)
1.一个c语言程序是由( c ) 组成的。
a.主程序 b.子程序 c.函数 d.过程。
2.转换说明符%x的输出形式是( c )。
a.十进制 b.八进制 c.十六进制 d.二进制。
3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b)
printf的正确说法是( c )
a.循环体只执行一次b.死循环。
c.循环体一次也不执行d.输出。
4.若x、y、z均为int 型变量,则执行下列语句后的z值为 ( a )。
x=1; y=2; z=3; z=(x>y)?z :y ; z = z a.1 b.4 c.2d.3
5.下面标识符中,合法的用户标识符为( d )。
a.p#ad b.12a c.chard._int
6. ‘a’ +3 的结果是(b )。
a.’a’ b.’d’的ascⅱ码 c.65d.3
7.语句char str[20];说明str是一个字符串,最多能表示 ( b )
a.20个字符 b.19个字符 c.18个字符 d.21个字符。
8.将int 型变量n转换成float型变量的方法是 ( b )。
a.float n b.(float)n c.float(n) d.21个字符。
9.以下不正确的描述是 ( c )。
a. 使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成。
b. while循环是先判断表达式后执行循环体语句。
c. do-while和for循环均是先执行循环体语句,后判断表达式。
d. for、while、do-while循环中的循环体均可以由空语句构成。
10.在循环中使用break 语句的功能是( a )。
a. 使程序的执行跳出break所在的那一重循环。
b. 使程序执行结束。
c. 跳出包含此break语句的所有循环。
d. 终止本次循环,继续下次循环。
11.下面是一个初始化指针的语句:int *px = a;其中指针变量的名字应该是( c )。
a.*pzb.a c.pxd.&a
12.若指针 px为空指针,则 ( b )。
a.px指向不定 b.px的值为零
c.px的目标为零 d.px的地址为零。
13.对于语句int *px[10],以下说法正确的是( b )
a. px是一个指针,指向一个数组,数组的元素是整数型。
b. px是一个数组,其数组的每一个元素是指向整数的指针。
c. a和b均错,但它是c语言的正确语句。
d. c语言不允许这样的语句。
14.具有相同基类型的指针变量p和数组变量y,下列写法中不合法的是 ( d )
a.p = yb.*p = y[i]
c.p + y[id.p = y
15.已知static int a=p=q=p,则表达式 *(p[0]+1)+*q+2)的值是( a )。
a.5 b.4 c.6d.7
16.已知for(;n>=1;n--)下列语句实现将s2所指字符数组中前n个字符复制到s1所指字符数组中,其中**不正确的是( d )。
a.*s1++=s2b.s1[n-1]=s2[n-1]
c.*(s1+n-1)=*s2+n-1d.*(s1)=*s2)
17.调用函数的实参与被调用函数的形参应该有如下关系( d )
a.只要求实参和形参个数相等 b.只要求形参和实参顺序相同。
c.只要求实参和形参数据类型相同 d.上述三点均需具备。
18.联合体成员的数据类型 ( b )。
a.相同b.可以不同也可以相同
c.长度一样d.是结构体变量。
19.由系统分配和控制的标准输出文件为( d )
a.键盘 b.磁盘 c.打印机 d.显示器。
20.c语言标准库函数fread(fd,buffer,n)的功能是( a )。
a.从文件fd中读取长度不超过n个字节的数据送入buffer指向的内存区域。
b.从文件fd中读取长度不超过n-1个字节的数据送入buffer指向的内存区域。
c.从文件fd中读取长度不超过n个字符送入buffer指向的内存区域。
d.从文件fd中读取长度不超过n-1个字符送入buffer指向的内存区域。
第二部分:程序分析题(12项,共30分)
21.下列程序。
main()
int x,y,z;
x=y=2;z=3;
y=z++-1;
printf(“%d\t%d\t”,x,y);
y=++x-1;
printf(“%d \t%d”,x,y);
y=z---1;
printf(“%d\t%d\t”,z,y);
y=--z-1;
printf(“%d\t%d”,z,y);
运行后输出的数据为___c___
a. 3 1 4 2 b. 3 1 3 3 c. 2 2 3 2 d. 2 1 3 2
22.下列程序。
main()
int i,j;char *a,c;
a=”computer”;
printf(“%s”,a);
for(i=0,j=7;i;
int s1,s2,i,*ptr;
s1=s2=0;
ptr=&a[0];
for(i=0;i<5;i+2=2)
s1+=*ptr+i);
s2+=*ptr+i+1);
printf(“s1=%d,s2=%d”,s1,s2);
运行后输出的数据为__c___
25.下列程序。
int c=1;
main()
static int a=5;int b=6;
printf(“a=%d b=%d c=%d”,a,b,c);
func();
printf(“a=%d,b=%d,c=%d”,a,b,c);
func();
func()
static int a=4;int b=10;
a+=2;c+=10;
b+=c;printf((“a=%d,b=%d,c=%d”,a,b,c);
运行后输出的数据为_ a___
a. a=5 b=6 c=1b. a=5 b=6 c=1
a=6 b=21 c=11a=7 b=17 c=11
a=5 b=6 c=11a=5 b=6 c=11
a=8 b=31 c=21a=9 b=17 c=21
c. a=5 b=6 c=1d. a=5 b=6 c=1
a=6 b=21 c=11a=7 b=17 c=11
a=6 b=21 c=11a=7 b=17 c=11
a=8 b=31 c=21a=9 b=38 c=21
26.已知。
struct student
char ﹡name;
int student_n;
char grade;
struct student temp,*p=&temp;
C语言考试试卷
2010年c语言考卷详解。b场 单选题 1 c 语言程序中可以对程序进行注释,注释部分必须用符号 c 括起来。a c long b 2 3 d double y 3 10 执行以下程序段后,m的值是 c int a int m 10,k,ptr a for k 0 k 5 k m ptr k a 2...
C语言考试试卷
选择题。1 以下叙述正确的是。a c语言比其他语言高级 b c语言可以不用编译就能被计算机识别执行。c c语言以接近英语国家的自然语言和数学语言作为语言的表达形式。d c语言出现的最晚 具有其他语言的一切优点。2 c语言中用于结构化程序设计的三种基本结构是。a 顺序结构 选择结构 循环结构 b if...
C语言考试试卷
西电09级 c语言 期末试卷a 理论闭卷部分 2009 2010学年第一学期2010年1月考。班级姓名学号。注意事项 考生文件 存盘位置 刘涛。doc 一 单项选择题 每题1分,共12分 1 c语言中的标识符只能由字母 数字和下划线组成,且第一个字符 a 必须为字母b 必须为字母或下划线 c 必须为...