c语言试卷答案

发布 2021-04-23 12:40:28 阅读 2895

2014-2015学年第一学期c语言期末考模拟试卷。

考试时间:120分钟。

一、计算机基础(10’=10*1’)

1. 下列关于字节的叙述中,正确的一项是。

a)字节通常用英文单词“bit”来表示,有时也可以写做“b”

b)目前广泛使用的pentium机其字长为5个字节。

c)计算机中将8个相邻的二进制位作为一个单位,这种单位称为字节。

d)计算机的字长并不一定是字节的整数倍。

解析】选项a:字节通常用byte表示。选项b:pentium机字长为32位。选项d:字长总是8的倍数。

2.十进制数215用二进制数表示是。

a)1100001 b)11011101 c)0011001 d)11010111

解析】十进制整数向二进制的转换采用“除二取余”法,结果反取。

3. 在计算机中存储数据的最小单位是。

a)字节 b)位 c)字 d)kb

解析】在计算机中存储数据的最小单位是二进制位。

4.微机中1kb表示的二进制位数是。

a)1 000 b)8×1 000 c)1024 d)8×1024

解析】8个二进制位组成一个字节,1kb共节。

5. 下列字符中,其ascii码值最小的是( )

a)8 b)a c)z d)m

解析】各种数字符号的ascii码值要小于所有英文字母的ascii码值。

6. 下列关于汉字编码的叙述中,不正确的一项是( )

a)汉字信息交换码就是国际码 b)2个字节存储一个国际码

c)汉字的机内码就是区位码 d)汉字的内码常用2个字节存储。

解析】汉字的机内码=汉字的国际码+8080h,国际码是区位码中的区码和位码各自转换成十六进制后各加20h。

7. 将高级语言编写的程序翻译成机器语言程序,所采用的两种翻译方式是( )

a)编译和解释 b)编译和汇编 c)编译和链接 d)解释和汇编。

8. 一个栈的入栈序列是按a、b、c、d、e,则栈的不可能输出序列( )

a. edcba b. decba c. dceab d. abcde

9. 在16×16点阵的汉字字库中,存储一个汉字的字模所占的字节数为( )

a)16 b)32 c)64 d)2

解析】汉字的输出主要指显示输出和打印输出汉字的字形(即字模)。无论汉字的笔画多少,都可以写在同样大小方块内。这样我们把一个方块看成是一个由n行n列的点阵组成。

这样一个方块内共有n×n个点。若16×16点阵的汉字,每个方块字共有16×16=256个点组成。方块内的点可黑可白,一个点阵的黑点组成汉字的笔画,称之为汉字点阵字型。

一个16×16点阵汉字可以用16×16=256二进制位来表示,一个汉字占8位,即存储一个汉字字模需要32个字节。

10. 一个无符号非零二进制整数的左边最高两位为0,对该无符号数左移两次,形成一个新的无符号二进制数,则新的二进制数是( )

a)原数的2倍 b)原数的4倍 c)原数的二分之一 d)数值无变化,与原数大小一样。

解析】无论进行算术左移还是逻辑左移,右边最低位都补0,左移两次之后,形成一个新的无符号二进制数应该是原数的4倍。

答题卡:二、单选题(每题1分,共20分)。

1. 下列四组字符串中都可以用作c语言程序标识符的一组是( )

a. print _3d oodb abc

b. i\am one_half start$it 3pai

c. pxq my->book line#

d. str_l cpp pow while

2. 逗号表达式”(a=3*5,a*4),a+15″的值是___

a. 15b. 60c. 30d. 不确定。

3. 语句 printf(“%d”,(a=2)&&b= -2);的输出结果是___

a. 无输出b. 结果不确定c. 0d. 1

4. 已知整数a=1,b=2,c=3;求表达式执行后a,b,c,d的值,表达式d=-a? b++ c;__

a,0,2,3,3 b,1,2,3,4 c,0,2,4,4 d,1,2,2,3

5. 下列程序的运行结果是:(

int y=-5;

while (y++)

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

a. y=0b. y= -1c. y=1 d. while构成无限循环。

6. 有以下程序:

#include<>

void writestring(char *fh,char *str)

file *fp;

fp=fopen(fn,”a”);

if(fp==null) eixt(0);

fputs(str,fp); fclose(fp);

void main()

writestring(“

writestring(“

程序运行后,文件中的内容是___

a,begin b,end c,beginend d,endbegin

7. 若有#define add(n) n+n (考核宏定义)

则printf(“%d”,add(1+2)*3);的输出是( )

a,9 b,10 c,12 d,18

8. 以下程序的输出结果是 (

int a[3][3]=,i,j,s=0;

for(i=1;i<3;i++)

for(j=0;jprintf (“d”,s);

a. 18b. 19c. 20d. 21

9. 设有以下语句。

stuct stu, *p;

p=&a[0];

则以下表达式___的值是1102.

a,p++-num b,p->num++ c,(*p).num++ d,++p->num

10. 在c语言中,以下说法正确的是:(

a. 普通实参和与其对应的形参各占用独立的存储单元。

b. 实参和与其对应的形参共占用一个存储单元。

c. 只有当实参和与其对应的形参同名时才共占用存储单元。

d. 形参在函数调用前它就占用存储单元。

11. 以下叙述中不正确的是__

a. 在不同的函数中可以使用相同名字的变量。

b. 函数中的形式参数是局部变量。

c. 在一个函数内定义的变量只在本函数范围内有效。

d. 在一个函数内的复合语句中定义的变量在本函数范围内有效。

12. 以下程序的输出结果是( )

int a=10,b=20;

int *p=&a;

p=100;

printf(“a=%d”,*p+1);

a. 101b. 11c. 20d. 无结果。

13. 以下程序运行后的输出结果是: (

char s[ ]9876″,*p;

for ( p=s ; pprintf(“%s “,p);

a. 9876 876b. 9876c. 876d. 无结果。

14. 当执行下列程序段时,循环体将___

x=-1;do;

int i,s=1;

for(i=1;i<4;i++)s*=aa;

printf(“%d”,s);

程序运行后的输出结果是( )

a. 0b. 6c. 12d. 24

答题卡:三、分析程序,给出程序运行结果(每小题5分,共20分,注意输出格式,要求写出分析过程)。

1.以下程序运行后,输出结果是运行结果:

#include<>

void fun()

void main()运行结果:

2.写出以下程序运行后的输出结果。

#include <>运行结果:

void fun ( int a[3][3], int b[3][3])

void main(),c[3][3], i,j;

fun(s,c);

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

C语言试卷答案

程序设计语言 c 模拟试卷。一 试题一 40分,每小题4分 按题目要求解答下列各小题。1.定义一个大小为6的数组,并且使数组的值都为0。int a 6 2.写出执行如下程序段后的输出结果。char a hello p p a 2 printf s p llo 3.假设你有x是一个float变量,而不...

C语言试卷A答案

一 选择题 1 10 每小题2分,11 50 每小题1分,共60分 下列各题a b c d 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。1 算法能正确地实现预定功能的特性称为算法的。a 确定性 b 易读性 c 健壮性 d 高效性。答案 a评析 算法的确定性...

C语言试卷 答案

单选题答案。第1题答案 c评析 本题的考查点是格式输入函数scanf 的使用。scanf函数输入形式为 scanf 格式控制,地址表列 选项b中,p long malloc 8 是分配8个字节的long型存储单元,所以能通过scanf语句正确给输入项读入数据 选项c中,p a,求出变量a的内存地址并...