一、选择题
1. 有以下程序
程序运行后的输出结果是( )。
答:A
【解析】注释
2. 标准库函数之间计算机不参与编译,所以a 、b 值仍为0。 的功能是( )。
A. 从文件f 中读取长度不超过n-1的字符串存入指针S 所指的内存
B. 从文件f 中读取长度为n 的字符串存入指针s 所指的内存
C. 从文件f 中读取n 个字符串存入指针s 所指的内存
D. 从文件f 中读取n-1个字符串存入指针s 所指的内存
答:A
【解析】fgets 函数功能是从f 所指文件中读入
端自动加一个结束标志个字符放入s 为起始地址的空间内,并在尾个字同时将读/写位置指针向前移动字符串长度个字节。在读出
符之前,如遇到了换行符或EOF , 则读出结束,A 项正确。B 项中“读取长度为n ”错误。C 项与D 项中“读取个字符串”错误,读取的是n-1个字符。
3. 有以下程序(注:字符a 的ASCII 码值为97):
程序运行后的输出结果是( )。
A.abc
B.789
C.7890
D.979800
答:B
【解析】a 、b 、c 的ASCII 值分别为97、98、99。程序中执行输出S 中的内容与10进行模运算后的值,s 是一个指针,首先指向字符a ,先执行97%10, 结果为7; 然后++s,指针指向下一个字符b ,执行98%10, 结果为8, 直到s 所指为空,故最后输出的结果为789。
4. 以下函数的功能是计算a 的n 次方作为函数值返回:
为实现上述功能,函数中下画线处应填入的是( )。
A.
B.
C.
D.
答:B
【解析】for 循环语句,i=l时,
5. 有以下函数:
程序运行后的输出结果是( )。
A.zhang
B.zhao
C.wang
D.19
答:B
x+2代表了指向第三个元素的指针,【解析】结构体数组存储了三个人的信息,所以输出name
为Zhao 。
,最后返回s 。
6. 若变量已正确定义为int 型,要通过语句给a 赋值1、给b 赋值2、给c 赋值3,以下输入形式中错误的是( )(注:⑪代表一个空格符)。
A. B. C.
D.1, 2, 3
答:A
【解析】使用该语句时,要求除格式控制符以外的字符都要原样输入,“,”为非格式符,要原样输入。A 项中没有输入非格式符“,”,是不正确的。
7. 有以下程序:
程序的运行结果是( )。
A.21
B.6
C.123456
D.11
答:A
【解析】程序执行过程为:以读/写方式打开一个新的二进制文件从地址为a 的数据块开始,一次输出一个整型字节的数据,只输出一次,将1写入文件中;执行for 循环,将文件指针移到文件开头,将文件第一个数值读出赋给k ,再将指针移动到开头,
向文件内输入
循环实现将a 数组中元素累加,结果21存放在文件中。调用rewind 将文件指针移
动到开头,调用fread 函数从文件中读出一个整型数据赋给k=21,调用fclose 函数关闭文件,打印k 值,故A 项正确。