《c语言》试卷。
班级姓名学号。
一、 填空题(15分,每空0.5)
1. c语言的开发,需要用(1) 编写源程序,需要使用编译器将其(2再使用连接程序生成(3目前均使用将三者集成为一体的(4英文缩写是ide;
2. c语言是一个函数的 ( 5但程序只从main()开始执行,也从main()结束。其它函数的运行,均是被( 6直接或间接调用结果。
3. c语言的保留字不能用作( 7变量名的(8不可以是数字。
4. c语言中变量分为(9) 变量和(10) 变量,前者在函数内内声明,而后者在函数外,其作用域不同。
5. c语言有多种数据类型,其中double类型用来表示(11而long的类型用来表示(12
6. (13变量的值是地址, 而数组变量名字,也具有(14的性质。
7. (15) 和汉字在计算机中分别用(16) 和汉字内码表示的,前者占用1byte,而汉字占2byte。
8. 若定义了字符数组 char str=hello,wolrd”,其占用的内存字节数是12byte,因为还有一个(17) 。
9. 若声明字符数组 char str=山东科技大学”,其占用的内存字节数是(18) 。
10.当使用c语言内部函数时,必须包含声明这个函数的 (19例如,当需要使用printf()函数时,必须包含( 20
11. 填空如下字符的ascii码或ascii码对应的字符。
二、数据类型及其运算知识 (写出如下程序段的结果)( 10分,每小题2分)
【程序段a1】
char x=0x45;
printf(”x=%xh, \x=%d, \x=’%c’ ”, x, x, x);
//-结果是。
【程序段a2】
char x=100;
x+=17;
printf(”a: x=%d”, x);
x+=60;
printf(”b: x=%d”, x);
//-结果是。
【程序段a3】
unsigned int u=65535;
u+=100;
printf(”u=%d”, u);
//-结果是。
【程序段a4】
int f=512+6;
char s;
s=(char)f;
printf(”s=%d”, s);
//-结果是。
程序段a5】
float fx=0.86;
int nx=(int)fx*1000;
printf(”nx=%d”, nx);
//-结果是。
三、字符串与指针操作知识考核(写出如下程序段的结果)
10分,每小题2分)
【程序段b1】
char str=
printf(“str=%s”,str);
//-结果是。
【程序段b2】
char str=a%%1234567890\\”
char *ps=&str[1];
printf(“%s”, ps);
//-结果是。
【程序段b3】
char str=abcde12345”;
str[5]=’0’;
str[8]=’0’;
printf(“%s”, str);
//-结果是。
【程序段b4】
int x;
int *px=&x;
*px=100;
printf(“x=%d”, x);
/--结果是。
程序段b5】
char namelist[10]=;
char *p;
p=namelist[3];
printf(“这所大学是: %s”, p);
/--结果是。
四、运算符与程序结构知识测试(20分,每题2分)
程序段c1】
char x=70;
char y, z;
y=x/3*3;
z=y*3/3;
printf(“y=%d z=%d”, y, z);
//-结果是。
程序段c2】
char x=255;
x>>=2;
printf(“x=%d”, x);
//-结果是。
程序段c3】
char x=1;
x<<=2;
printf(“x=%d”,x);
//-结果是。
程序段c4】
char x=200;
char y=x%7;
printf(“y=%d”,y);
//-结果是。
程序段c5】
unsigned char x=0xaa;
x=~x;printf(“x=%d”, x);
//-结果是。
程序段c6】
int x=47;
int y;
y=x>256? 2*x : x ;
printf(“y=%d”, y);
/--结果是。
程序段c7】
char str[20]=;
char s=48, n=10,i=0;
while(n--)
str[i++]s++;
printf(“str=%s n=%d i=%d”, str , n , i);
//-结果是。
程序段c8】
char y= -12;
if(y+12)
printf(“action 1”);
elseprintf(“action 2”);
printf(“end action!”)
/--结果是。
程序段c9】
char x=12345678”,n=0;
while(x[n++]
printf(“n=%d”, n);
/--结果是。
程序段c10】
int n=10,sum=0,i;
for(i=0;i printf(“sum=%d”,sum);
/--结果是。
五、编程题 (45分每题9分)
1.补充如下程序,实现计算的结果,void main()
double r=0;
int n;
//下面程序段实现(在试卷或答题纸上均可以)
//正确的结果应当是r=?
printf(“结果是:%d”,r);
2. 编写一个main()函数,在其中实现。
a).输入两个浮点数,输入的过程是给出一个提示”输入第一个数:”,在键盘上输入数据后,接着换行给出提示”输入第二个数”, 输入第二个数。
b).输入第二个数后,给出这两个数的和,打印出:“两数之和为。
3.编写一个函数,能将整型数组中的最大值返回:,要求的函数形式为
int findmax(int *narray,int n){}
或。int findmax(int narray,int n){}
4. 编写一个计算阶乘的通用函数函数,返回值long型,参数也为long,并写出在main()函数中调用的程序段(可以使用递归,也可以用循环算法).
假设,不用考虑参数值为负的情形,认为,输入参数必为正]
5.写一个函数,函数的功能是将字符串中的字符倒序,函数的格式为。
void strreverse(char str)
或者。void strreverse(char *str){}
注:若str=”abcdef”,则strreverse(str)运行后,str=”fedcba”)
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 语言的参数传递机制包括传...