江苏省计算机等级考试。
学年第学期 c语言程序设计试卷。
一、 选择题(本大题共15小题,每题1分,共15分)
1.与十进制511等值的十六进制数为___
a) 1ff b) 2ff c) 1fe d) 2fe
2.能将高级语言编写的源程序转换成目标程序的是___
a) 编辑程序 b) 编译程序 c) 解释程序 d) 链接程序。
3. 下列常数中,__可以作正确的c语言常量。
a) 0x7g b)0x2al c) e d)7ff
4.以下叙述中正确的是___
a) 构成c程序的基本单位是函数。
b) 可以在一个函数中定义另一个函数。
c) main()函数必须放在其它函数之前。
d) 所有被调用的函数一定要在调用之前进行定义。
5.已知大写字母a的ascii码是65,小写字母a的ascii码是97,则用八进制表示的字符常量'\101'是___
a) 字符a b) 字符a c) 字符e d) 非法的常量。
6.以下非法的赋值语句是___
a) n=(i=2,++i); b) j++;c) +i+1); d) x=j>0;
7.设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是___
a) 6.500000 b) 6 c) 5.500000 d) 6.000000
8.设有如下说明
typedefstruct
intn;charc;doublex;}std;
则以下选项中,能正确定义结构体数组并赋初值的语句是___
a) stdtt[2]=,
b) stdtt[2]=;
c) structtt[2]=,
d)structtt[2]=,
9.若有以下说明和定义。
typedef int *integer;integer p,*q;以下叙述正确的是___
a) p是int型变量b) p是基类型为int的指针变量。
c) q是基类型为int的指针变量 d) 程序中可用integer代替int类型名。
10.正确的c语言用户自定义标识符是___
a)ok? b)float c)a3b d) random﹪2
11.设int a[4]=;则数组a的第一维的大小是。
a) 2 b) 3 c) 4 d) 无确定值。
12. 在函数内,定义变量时存储类型符可省略的是___
a) auto b) static c) extern d)register
13. 设有定义语句:enum t1 time;则枚举常量a2和a3的值分别为___
a) 1和2 b) 2和3 c) 7和2 d) 7和8
14.在文件使用方式中,字符串″rb″表示___
a) 打开一个已存在的二进制文件,只能读取数据。
b) 打开一个文本文件,只能写入数据。
c) 打开一个已存在的文本文件,只能读取数据。
d) 打开一个二进制文件,只能写入数据。
15.将一个整数10002存到磁盘上,以ascii码形式存储和以二进制形式存储,占用的字节数分别是 __
a) 2和2 b) 2和5 c) 5和2 d) 5和5
二、 填空题(本大题共5小题,每空1分,共15分)
1.表达式a=3*5,a*4,a+5
的值是。2.设char string this_is_a_book!″;则数组的长度应是。
3.表达式3&9的值是_ ,表达式3|9的值是__ 表达式3^9的值是__ 表达式~0的值是__ 表达式5<<2的值是__
4.文件使用方式“r”表示__ w+” 表示__ ab+” 表示__
5.c程序开始往往含有以“#”开头的命令, 它们是命令。在程序中以“/*开始, 以“*/结束的内容, 它们是程序中的部分, 用以帮助阅读程序。程序**的录入,生成程序*.
c,语法分析查错,翻译生成程序*.obj,与其它目标程序或库链接装配,生成程序*.exe。
三、 程序分析题,阅读下列程序写出输出结果(本大题共7小题,每题4分,共28分)
1.main()
float a,b;
int c;
scanf("%f,%f",&a,&b);
c=max(a,b);
printf("max is %d",c);
max(float x, float y)
float z;
z=x>y?x:y;
return(z);
输入值 6 ,10。
2.swap(p1,p2)
int *p1,*p2;
int p;
p=*p1;
*p1=*p2;
*p2=p;
main()
int a,b;
scanf("%d,%d",&a,&b);
printf(“a=%d,b=%d”,a,b);
printf(“swapped:”);
swap(&a,&b);
printf(”a=%d,b=%d",a,b);
a,b的值分别为5,9。
#include <>
int i=1;
main()
static int a;
register int b=-10;
int c=0;
printf("-main---n");
printf("i:%d a:%d \
b:%d c:%d",i,a,b,c);
c=c+8;
other();
printf("-main---n");
printf("i:%d a:%d b:%d c:%d",i,a,b,c);
i=i+10;
other();
other()
static int a=2;
static int b;
int c=10;
a=a+2; i=i+32; c=c+5;
printf("-other---n");
printf("i:%d a:%d b:%d c:%d",i,a,b,c);b=a;
4.void main()
int x=1,y=0,a=0,b=0;
switch(x)
case 1:
switch(y)
case 0: a++;break;
case 1: b++;break;
case 2: a++;b++;break;
case 3: a++;b++;
printf(“a=%d,b=%d”,a,b);
#include <>
main()
int a[2][3]=,
int b[3][2],i,j;
printf("array a:");
for(i=0;i<=1;i++)
printf("");
printf("array b:");
for(i=0;i<=2;i++)
6.main()
int x,y,z;
x=y=z=0;
+x||+y&&+z;
printf(“x=%d\ty=%d\tz=%d”,x,y,z);
x=y=z=0;
+x&&+y||+z;
printf(“x=%d\ty=%d\tz=%d”,x,y,z);
x=y=z=0;
+x&&+y&&+z;
printf(“x=%d\ty=%d\tz=%d”,x,y,z);
x=y=z=-1;
+x&&+y&&+z;
printf(“x=%d\ty=%d\tz=%d”,x,y,z);
7.main(int argc, char ar**)
while(argc>1)
{ +ar**;
printf("%s",*ar**);
--argc;
设输入:c:\tc> test[.exe] hello world!
四、 程序填空题(本大题共2小题,每题4分,共8分)
1.输入一行字符,统计其中有多少个单词。
#include <>
main()
char string[81];
int i,num=0,word=0;
char c;
gets(string);
c语言试卷c
a.p q c.p n1 10 若有说明语句 int a,b,c,d c 则能从键盘读入三个整数分别赋给变量a b c的语句是。a.scanf d d d a,b,d b.scanf d d d a,b,d c.scanf d d d a,b,dd.scanf d d d a,b,d 11 c语言标...
C语言试卷A
青海大学试卷 a卷 系别 班级学号姓名。考试课程 程序设计基础 c 考试日期 2009 年 12月17日。注 所有答案均写在答题卡上,答在试卷上不得分,考试结束后试卷和答题卡一并交回。一 填空题 每空1分,共16分 1 整型静态数组没有初始化,也没有赋值,此时数组元素的值均为 0 2 数组在内存中占...
C语言试卷
一 填空共5题 共计10分 第1题 2.0分 题号 339 赋值运算符的结合性是由 右 至 左 第2题 2.0分 题号 925 在c 语言结构化程序中,函数 是程序的基本组成单元 在c 语言的面向对象设计框架中,对象 是程序的基本组成单元。第3题 2.0分 题号 926 c 语言的参数传递机制包括传...