后,变量i的值为
A)2
B)3
C)4
D)5
正确答案:
C1nowfTG4KI
3.16设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为
A)int
B)float
C)double
D)不确定
正确答案:
CfjnFLDa5Zo
3.17在C语言中,char型数据在内存中的存储形式是
A)补码
B)反码
C)原码
D)ASCII码
正确答案:
DtfnNhnE6e5
3.18字符型数据在机器中是用ASCII码表示的,字符’5’和’7’在机器中表示为
A)10100011和01110111
B)01000101和01100011
C)00110101和00110111
D)01100101和01100111
正确答案:
CHbmVN777sL
3.19不能进行++和--运算的数据类型为
A)指针
B)整型
C)长整型
D)常量
正确答案:
DV7l4jRB8Hs
3.20设有intx=11;则表达式A)3
B)4
C)11
D)12
正确答案:
A83lcPA59W9
3.21以下程序的输出结果是
main<)
{inta=21,b=11。
printf<"%d\n",--a+b,--b+a)。
}
A)30
B)31
C)32
D)33
正确答案:
AmZkklkzaaP
3.22假设整型变量a,b,c的值均为5,则表达式a+++b+++c++的值为
A)17
B)16
C)15
D)14
正确答案:
CAVktR43bpw
3.23已知inta=6。
则执行a+=a-=a*a。
语句后,a的值为
A)36
B)0
C)-24
D)-60
正确答案:
DORjBnOwcEd
3.24设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是
A)n=B)m=n*100+0.5,n=m/100.0
C)n=n*100+0.5/100.0
D)n=正确答案:
B2MiJTy0dTT
3.25sizeofA)一个双精度型表达式
B)一个整型表达式
C)一种函数调用
D)一个不合法的表达式
正确答案:
BgIiSpiue7A
3.26在C语言中,int,char和short三种类型数据在内存中所占用的字节数
A)由用户自己定义
B)均为2个字节
C)是任意的
D)由所用机器的机器字长决定
正确答案:
DuEh0U1Yfmh
3.27以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子x÷y÷z的C语言表达式是
A)x/y*z
B)x*<1/C)x/y*1/z
D)x/y/z
正确答案:
AIAg9qLsgBX
3.28下列关于复合语句和空语句的说法错误的是
A)复合语句是由“{”开头,由“}”结尾的
B)复合语句在语法上视为一条语句
C)复合语句内,可以有执行语句,不可以有定义语句部分
D)C程序中的所有语句都必须由一个分号作为结束
正确答案:
CWwghWvVhPE
3.29下列关于字符串的说法中错误的是
A)在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′\0′作为字符串结束标志
B)′\0′作为标志占用存储空间,计入串的实际长度
C)在表示字符串常量的时候不需要人为在其末尾加入′\0′
D)在C语言中,字符串常量隐含处理成以′\0′结尾
正确答案:
Basfpsfpi4k
二、填空题<请将每一个空的正确答案写在答题卡相应序号后。
)
3.30以下程序的输出结果是【1】。
inta=1234。
printf<"-\n",a);
正确答案:
1234ooeyYZTjj1
3.31在计算机中,字符的比较是对它们的【2】进行比较。
正确答案:
ASCII码
3.32在内存中,存储字符′x′要占用1个字节,存储字符串″X″要占用【3】个字节。
正确答案:
2BkeGuInkxI
3.33在C语言中<以16位PC机为例),一个float型数据在内存中所占的字节数为4;一个double型数据在内存中所占的字节数为【4】。
正确答案:
8PgdO0sRlMo
3.34以下程序段的输出结果是【5】。
main<)
{inta=2,b=3,c=4。
a*=16+
printf<"%d",a)。
}
正确答案:
283cdXwckm15
3.35以下程序段的输出结果是【6】。
intx=17,y=26。
printf<"%d",y/=正确答案:
5h8c52WOngM
3.36下列y的值是【7】。
inty。
y=sizeof<2.25*4);
正确答案:
8
3.37以下程序的输出结果是【8】。
main<)
{inti=010,j=10;
pirntf<"%d,%d\n",i,j)。
}
正确答案:
8,10v4bdyGious
3.38已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=′a′+′8′-′3′的值为【9】。
正确答案:
fJ0bm4qMpJ9
3.39如下语句printf<"%c\n",′B′+40)。
在执行后的输出结果是【10】。
正确答案:
jXVauA9grYP
3.40定义inta=5,b=20。
若执行语句printf<"%d\n",++a*--b/5)。
后,输出的结果为【11】。
正确答案:
9bR9C6TJscw
第4章顺序程序设计
一、选择题<在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。
)
4.1若变量已正确说明为float型,要通过语句scanf<"%f%f%f",&a,&b,&c)。
给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是
A)10<回车>22<回车>33<回车>
B)10.0,22.0,33.0<回车>
C)10.0<回车>22.033.0<回车>
D)1022<回车>33<回车>
正确答案:
BpN9LBDdtrd
4.2现有以下程序段
#include
main<)
{inta,b,c。
scanf<"a=%*d%d,b=%d%*d,c=%d",&a,&b,&c)。
printf<"a=%d,b=%d,c=%d\n",a,b,c)。
}
若输出的结果为a=20,b=30,c=40,则以下能够正确输入数据的是
A)a=10]20,b=20]30,c=40
B)20,30,40
C)a=20,b=30,c=40
D)a=10]20,b=30]20,c=40
[注]:
“]”表示空格,表示回车
正确答案:
DDJ8T7nHuGT
4.3x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是
A)INPUTx、y、z。
B)scanf<"%d%d%d",&x,&y,&z)。
C)scanf<"%d%d%d",x,y,z)。
D)read<"%d%d%d",&x,&y,&z)。
正确答案:
BQF81D7bvUA
4.4已有定义inta=-2。
和输出语句printf<"%8lx",a)。
以下正确的叙述是
A)整型变量的输出形式只有%d一种
B)%x是格式符的一种,它可以适用于任何一种类型的数据
C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的
D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
正确答案:
D4B7a9QFw9h
4.5下列程序段的输出结果是:
inta=1234。
floatb=123.456。
doublec=12345.54321。
printf<"-,%2.1f,%2.1f",a,b,c)。
A)无输出
B)12,123.5,12345.5
C)1234,123.5,12345.5
D)1234,123.4,1234.5
正确答案:
Cix6iFA8xoX
4.6执行下列程序时输入:
123<空格>456<空格>789<回车>输出结果是
main<)
{chars[100]。
intc,i。
scanf<"%c",&c)。
scanf<"%d",&i)。
scanf<"%s",s)。
printf<"%c,%d,%s\n",c,i,s)。
}
A)123,456,789
B)1,456,789
C)1,23,456,789
D)1,23,456
正确答案:
Dwt6qbkCyDE
4.7若已定义:
inta=25,b=14,c=19。
以下三目运算符<?
:
)所构成语句的执行后
a<=25&&b--<=2&&c?
printf<"***a=%d,b=%d,c=%d\n",a,b,c):
printf<"###a=%d,b=%d,c=%d\n",a,b,c);程序输出的结果是
A)***a=25,b=13,c=19
B)***a=26,b=14,c=19
C)###a=25,b=13,c=19
D)###a=26,b=14,c=19
正确答案:
CKp5zH46zRk
4.8请选出以下语句的输出结果
printf<"%d\n",strlen<"\t\"\065\xff\n"))。
A)5
B)14
C)8
D)输出项不合法,无正常输出
正确答案:
AYl4HdOAA61
4.9下列程序的输出结果是
main<)
{doubled=3.2。
intx,y。
x=1.2。
y=printf<"%d\n",d*y)。
}
A)3
B)3.2
C)0
D)3.07
正确答案:
Cch4PJx4BlI
4.10调用gets和puts函数时,必须包含的头文件是
A)stdio.h
B)stdlib.h
C)define
D)以上都不对
正确答案:
Aqd3YfhxCzo
4.11阅读下面程序段
#include"stdio.h"
main<)
{charc。
c=<′z′-′a′)/2+′A′。
putchar}
输出结果为
A)M
B)N
C)O
D)Q
正确答案:
AE836L11DO5
二、填空题<请将每一个空的正确答案写在答题卡相应序号后。
)
4.12下列程序的输出结果是16.00,请填空。
main<)
{inta=9,b=2。
floatx=【1】,y=1.1,z。
z=a/2+b*x/y+1/2。
printf<"%5.2f\n",z)。
}
正确答案:
6.6S42ehLvE3M
4.13在使用putchar和getchar函数处理字符时,必须在程序的开头出现包含头文件的命令行是【2】。
正确答案:
#include501nNvZFis
4.14下列程序的输出结果是【3】,【4】。
#include
main<)
{floata=-1.3。
b=1.3。
printf<"%f,%f",fabs}
正确答案:
1.300000
正确答案:
1.300000jW1viftGw9
4.15执行程序时的输入为123456789,则程序的运行结果为【5】。
#include"stdio.h"
main<)
{inta,b。
scanf<"-%*2d",&a,&b)。
printf<"%d\n",a-b)。
}
正确答案:
7xS0DOYWHLP
第5章选择结构程序设计
一、选择题<在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。
)
5.1在C程序中,判逻辑值时,用“非0”表示逻辑值“真”,又用“0”表示逻辑值“假”。
在求逻辑值时,用<)表示逻辑表达式值为“真”,又用<)表示逻辑表达式值为“假”。
A)10
B)01
C)非0非0
D)11
正确答案:
ALOZMkIqI0w
5.2已知intx=6,y=2,z。
则执行表达式z=x=x>y后,变量z的值为
A)0
B)1
C)4
D)5
正确答案:
BZKZUQsUJed
5.3能正确表示逻辑关系:
“a≥10或a≤0”的C语言表达式是
A)a>=10ora<=0
B)a>=0|a<=10
C)a>=10&&a<=0
D)a>=10‖a<=0
正确答案:
DdGY2mcoKtT
5.4若变量c为char类型,能正确判断出c为小写字母的表达式是
A)′a′<=c<=′z′
B)=′a′)||C)<′a′<=c)and<′z′>=c)
D)=′a′)&&正确答案:
DrCYbSWRLIA
5.5设intx=1,y=1。
表达式
x||y--)的值是
A)0
B)1
C)2
D)-1
正确答案:
BFyXjoFlMWh
5.6有如下程序段
inta=14,b=15,x。
charc=′A′。
x=执行该程序段后,x的值为
A)ture
B)false
C)0
D)1
正确答案:
DTuWrUpPObX
5.7以下程序的输出结果是
main<)
{inta=4,b=5,c=0,d。
d=!
a&&!
b||!
c。
printf<"%d\n",d)。
}
A)1
B)0
C)非0的数
D)-1
正确答案:
A7qWAq9jPqE
5.8设有:
inta=1,b=2,c=3,d=4,m=2,n=2。
执行b)&&d)后n的值是
A)1
B)2
C)3
D)4
正确答案:
BllVIWTNQFk
5.9已知x,y,z均为整型变量,且值均为1,则执行语句++x||++y&&++z。
后,表达式x+y的值为
A)1
B)2
C)3
D)4
正确答案:
CyhUQsDgRT1
5.10表达式a
A)||
B)&
C)<
D)<)
正确答案:
D
5.11若运行时给变量x输入12,则以下程序的运行结果是
main<)
{intx,y。
scanf<"%d",&x)。
y=x>12?
x+10:
x-12。
printf<"%d\n",y)。
}
A)0
B)22
C)12
D)10
正确答案:
AMdUZYnKS8I
5.12已知charch=′C′;则以下表达式的值是
ch==′A′&&ch<=′Z′)?
ch。
A)A
B)a
C)Z
D)c
正确答案:
D09T7t6eTno
5.13若有条件表达式a++:
b--,则以下表达式中能完全等价于表达式A)B)=0)
C)