程序执行后的输出结果是( )。
A.1B.2C.4D.死循环
参考答案:A
参考解析:一一k先自减再使用,所以第一次判断条件即为while(4),条件为真,执行打印k的值k=4—3,结果为1;第二次判断条件即为while(0),条件为假,结束循环,打印回车换行符。所以选择A选项。
37以下叙述中错误的是( )。
A.可以给指针变量赋一个整数作为地址值
B.函数可以返回地址值
C.改变函数形参的值,不会改变对应实参的值
D.当在程序的开头包含头文件stdi0.h时,可以给指针变量赋NULL
参考答案:A
参考解析:不能将一个整数直接赋给指针变量作为地址,所以A是错误的。函数的返回值可以是地址,即指针。函数调用中形参值的变化不会传递给实参。
38在E—R图中,用来表示实体联系的图形是( )。
A.椭圆形B.矩形C.菱形D.三角形
参考答案:C
参考解析:在E—R图中实体集用矩形,属性用椭圜,联系用菱形。
39有以下程序:
程序运行后的输出结果是( )。
A.3B.4C.5D.6
参考答案:B
参考解析:&按位与,如果两个相应的二进制位都为l,则该位的结果值为1,否则为0。l按位或,两个相应的二1进制位中只要有一个为l,该位的结果值为l。2的二进制为1 00000010,4的二进制为00000100,所以做或运算结果为1 00000110,该数与5即00000101做与操作结果为00000100,1即4。
40程序调试的任务是( )。
A.设计测试用例
B.验证程序的正确性
C.发现程序中的错误
D.诊断和改正程序中的错误
参考答案:D
参考解析:程序调试的任务是诊断和改正程序中的错误。
二、程序填空题
41下列给定程序的功能是:从键盘输入若干行字符串(每行不超过80个字符),写入文件myfile4.txt中,用一1作字符串输入结束的标志,然后将文件的内容显示在屏幕上。文件的读写分别由函数Readrext和Write-.Text实现。
请在程序的下划线处填人正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中.不得增行或删行,也不得更改程序的结构!
参考解析:
(1)}fw
(2)str
(3)str
【考点分析】
本题考查:函数定义以及文件指针;fputs函数的功能是向指定的文件写入—个字符串,其调用形式为:fputs(字符串,文件指针)。
【解题思路】
填空1:定义函数,函数的形参是一个文件类型的指针。
填空2:此处考查fputs函数的形式,应填入str。
填空3:依据plintf函数的格式,输出字符串内容,即printf(”%8”,str);。
三、程序改错题
42下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其他字符不变。
例如,若输入“Ab,cD”,则输出“AB,CD”。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODIl.C中,不得增行或删行,也不得更改程序的结构!