第 1 页:选择题 |
第 5 页:程序填空题 |
第 6 页:程序改错题 |
第 7 页:程序设计题 |
11下列合法的声明语句是( )。
A.int _abc=50;B.double int=3+5e2.5;C.long do=1L;D.float 3_asd=3e-3;
参考答案:A
参考解析:标识符是由字母、数字或下划线组成,并且它的第一个字符必须是字母或者下划线。B选项int不是表达变量类型的标识符,它不能再用作变量名和函数名。C选项do是C语言的一个关键字。D选项标识符不符合只能以字母或下划线开始的要求。
12下列程序的输出结果是( )。
A.4,3,7B.3,4,7C.5,2,7 D.2,5,7
参考答案:A
参考解析:根据函数的定义可知,如果x>y成立,则函数fl返回x的值,函数f2返回y的值。所以fl(a,b)一4,fl(c,d)=5,f2(a,b)=3,f2(12,d)=2,故e=f2(4,5)=4,f fl(3,2)=3,g=4+3+5+2-4-3=7。
13下列程序的运行结果是( )。
A.sum=18B.sum=10C.sum=9 D.sum=25
参考答案:B
参考解析:本题考查带参数的宏的定义:“#defineADD(x)x+x”中x代表m+n,故s写成s=m+n+m+n*k=1+2+1+2*3=10。
14下面程序段的输出结果是( )。
A.32769B.3211 67C.-32766 D.输出不确定数
参考答案:C
参考解析:在Turbo C 2.0环境中,int数据类型在内存中只占两个字节,其表示形式为二进制补码形式,所以范围是:-32768~32767,即10000000000000002~01111111111111112(首位为符号位)。而32770转换为二进制为10000000000000102,其符号位为1故输出时为一个负数,而它的绝对值是求负后的结果,补码求负的方法是:先按位求反,再加一。所以求得的绝对值为01111111 111111012+1=0111111111111102,即十进制的32766。综上所述,选项C正确。
15执行下述程序后,输出的结果是( )。
A.1B.4C.9 D.0
参考答案:D
参考解析:本题主要是考查带参数的宏定义,过程如下:int a=a/S(k+m)/s(k+m)=a/(k+m*k+m/k+m)=9/(3+2*3+2/3+2*3+2)=0。
16若希望下列的程序运行后输出25,程序空白处的正确选项是( )。
A.
B.
C.
D.
参考答案:D
参考解析:要想使程序输出是25,则在printf中,j-40=25,j=65,而j初值是50,“j+=a[i];”也可写成i=j+a[i];,j=50+a[i]-65,当a[i]-15,条件满足.数组下标由0开始,当i=2时,指向元素10,i=3时,10+5=1 5,退出循环体,所以选项D正确。
17运行下列程序,若从键盘输入字母“a”,则输出结果是( )。
A.FB.tC.e D.d
参考答案:C
参考解析:getchar函数是读取键盘的输入函数,本题中输入字母“a”,则c=ˊaˊ,判断if条件,发现ˊaˊ>=ˊaˊ&&ˊaˊ<=ˊg ˊ成立,则执行下列语句:c=c+4,c得到的字符的ASCⅡ码值,退出if语句,通过putchar函数输出字符。
18若fp是指向某文件的指针,且尚未读到文件末尾,则函数feof(fp)的返回值是( )。
A.EOFB.-1C.非零值D.0
参考答案:D
参考解析:本题考查feof(tp)函数,其功能是:测试所指的文件的位置指针是否已达到文件尾,如果已达到文件尾,则函数返回非0值;否则返回0,表示文件未结束。
19有以下程序
程序的运行结果是( )。
A.741B.963C.852 D.87542l
参考答案:C
参考解析:在for循环中,当y的值为9、6或3时,执行输出语句,输出表达式“--y”的值。y先自减1,然后再输出y的值。
20若希望下列的程序运行后输出25,程序空白处的正确选项是( )。
A.
B.
C.
D.
参考答案:D
参考解析:要想使程序输出25,则j-40=25,j=65,而j初值是50,所以填入for循环的语句,使引用的数组元素累加65-50=15即可。D选项中,i下标从0开始,i=2指向第3个数50+a[2]=50+10=60,继续循环60+a[3]=60+5=65,此时i 4跳出,循环结束。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |