1[单选题] 下面关于“EOF”的叙述,正确的是
A.EOF的值等于0
B.EOF是在库函数文件中定义的符号常量
C.文本文件和二进制文件都可以用EOF作为文件结束标志
D.对于文本文件,fgetc函数读入最后一个字符时,返回值是EOF
参考答案:B
参考解析:在c语言中,或更精确地说成c标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志。
2[单选题] 若有定义:int a,h;通过语句:scanf(”%d;%d”,&a,&B.;,能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A.3 5B.3,5C.3;5D.35
参考答案:C
参考解析:输入数据的格式必须与seanf()的格式控制串完全匹配,所以输入时必须在3和5之间输入“;”。
3[单选题] 有以下程序:
程序运行后的输出结果是( )。
A.02356B.0235C.235D.2356
参考答案:C
参考解析:k的值为5,逐个对caBe语句进行匹配,均不匹配,执行default下的语句n=0;k一一。再执行case2:ca804:后面的语句n+=2;k一一;。执行break语句跳出switch判断,打印n的值,即2。经过第一次循环后,k的值为3,然后进行k>0&&ll<5条件判断为真。第二次执行循环体,执行case3:后面的语句n+=1;k一一;。再执行break语句跳出循环,此时打印n的值3,此时k的值为2。第三次执行循环体k的值为2,满足条件,执行case2:case4:后面的语句n+=2;k一一;。执行break语句跳出循环体。打印n的值5。此时n不满足条件k>0&&n<5,所以结束循环。整个程序的打印结果为235。
4[单选题] 有以下程序:
程序运行后的输出结果是( )。
A.9B.8C.7D.10
参考答案:A
参考解析:题目中静态局部变量a,在静态存储区内分配存储单元,在程序整个运行期间都不释放。所以第-次调用函数执行n+=a++;时a先与n相加在再进行自增。n的值为4,a的值为2,且a变量执行完后空间没有释放。再执行s:。+f(a)时,s的值为4,调用f(a)函数时n的返回值为n=3+2=5,且此时a的值为3了。所以s的值为9。
5[单选题]若有以下程序
则程序的输出结果是
A.abedB.ABEJC.abejD.ABCD
参考答案:C
参考解析:
若有以下程序
该题目首先初始化变量a和b,通过for循环语句使a取值为0、1、2、3,f函数的功能是将a*a+'a'的值返回给b,即b为a…b e j。最后通过字符输出函数putchar()将b输出。因此C选项正确。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |