题库练习题
1.以下叙述中正确的是()。A.赋值语句是一种执行语句,必须放在函数的可执行部分B.scanf和printf是C语言提供的输入和输出语句
C由printf输出的数据都隐含左对齐D.由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定的AA项正确,赋值语句是一种可执行语句,应当出现在函数的可执行部分。但需要注意,不要把变量定义时的赋初值和赋值语句混为一谈。B项错误,C语言本身没有提供输入输出功能,scanf和printf属于标准库函数;C项错误,数据都隐含右对齐,如果想左对齐,可以在格式控制中的“%”和宽度之间加一个“-”号来实现;D项错误,若给出的总宽度n1小于n2加上整数位数和小数点(e或E格式还要加上指数的5位),则自动突破n1的限制。答案选择A选项。2.以下叙述中正确的是()。A.在scanf函数的格式串中,必须有与输入项一一对应的格式转换说明符B.只能在printf函数中指定输入数据的宽度,而不能在scanf函数中指定输入数据占的宽度oc.scanf函数中的字符串是提示程序员的,输入数据时不必管它D.复合语句也被称为语句块,它至少要包含两条语句A在printf和scanf函数中都可以指定数据的宽度,B项错误;scanf中的字符串在输入时可以使用其他非空字符,如逗号,但在输入时必须输入这些字符以保证匹配,C项错误;复合语句可以由任意多条语句构成,也可以一条没有,D项错误。答案选择A选项。3.以下能正确输出字符a的语句是()。A.print("%s","a");B.print("%s",a");C.printf("%c","a");D.printf("%d",a");A输出函数printf()的一般形式为"printf("格式控制字符串",输出项1,输出项2...).",输出项的形式要和格式控制字符串中的格式控制符保持一致,"%s"为输出字符串,"%c"为输出单个字符,"%d"为以十进制形式输出带符号整数,答案选择A选项。4.以下不能输出字符A的语句是()。(注:字符A的ASCII码值为65,字符a的ASCII码值为97。)
A.pprintf("%c\n",a-32);B.print("%d\n",A);C.printf("%c\n",65);D.print("%c\n"B-1);BA项,字符a的ASCII码值减去32为A的ASCII码值,执行字符输出,即为A;B项,执行整型输出,结果为65;C项,字符型输出A;D项,字符型输出A。答案选择B选项。5.设有定义:doublex=2.12,以下不能完整输出变量x值的语句是()。A.printf("x=%5.0f\n",x);B.printf("x=%f\n",x);oC.printf("x=%lf\n",x);D.printf("x=%0.5f\n",x);Aprintf函数控制字符%f输出float类型,%lf输出double类型。格式控制%m.nf,,表示数据输出总的宽度为m位,其中小数部分占n位。当数据的小数位多于指定宽度n时,截去右边多余的小数,并对截去的第一位小数做四舍五入处理;而当数据的小数位少于指定宽度n时,在小数的右边补零;当m小于有效位数时,整数部分输出所有有效数字并且自动对齐,小数部分按照n指定位数输出。A项按照float格式输出数据,宽度为5位,保留小数0位,输出为2,不能完整输出x。B项按照float格式输出数据,输出为2.。C项按照double格式输出数据,输出为2.。D项按照float格式输出数据,保留小数位数为5,输出为2.。答案选择A选项。6.以下关于逻辑运算符两侧运算对象的叙述中正确的是()
A.可以是任意合法的表达式B.只能是整数0或非0整数C.可以是结构体类型的数据D.只能是整数0或1AC语言的逻辑运算符比较特别,它的操作数没有明确的数据类型,可以是任意合法的表达式。答案选择A选项。7.以下关于C语言数据类型使用的叙述中错误的是()。A.若要准确无误差地表示自然数,应使用整数类型。B.若要保存带有多位小数的数据,应使用双精度类型。C.若要处理如“人员信息"等含有不同类型的相关数据,应自定义结构体类型。D.若只处理“真”和“假”两种逻辑值,应使用逻辑类型。DA项正确,整数的表示是不存在误差的;B项正确,float类型称为单精度类型,double类型称为双精度类型,一般系统中,为float类型的变量分配4个字节的存储单元,为double类型的变量分配8个字节的存储单元。C项正确,struct结构体,可以用来描述包含多种基本类型的复杂对象。D项错误,C语言中没有逻辑类型,在C++中才引入的。答案选择D选项。8.以下选项中,能表示逻辑值“假"的是()。A.1B.0.C.0D..0C在C语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。答案选择C选项。9.下列关系表达式中,结果为“假”的是()。A.(3+4)6B.(3!=4)2C.3=4
3D.(34)==1BA项,先执行3+4=7,76,结果为真B项,先执行3!=4为真,即为1,12结果为假;C项,先执行3=4结果为真,即1,再逻辑或运算只要左边值为1,就不在执行右边运算,结果为真;D项,先执行34结果为真,即为1,再执行1==1,结果为真。答案选择B选项。10.以下表达式的值与x无关、其值恒为真的是()。A.0x5B.x10x5C.x10
x5D.x10x5A逻辑与运算只有在“"符号两边操作均为真时,逻辑表达式为真;逻辑或当且只当"
"符号两边操作至少有一个为真时,逻辑表达式为真。B、C、D中,使得表达式恒为真,都跟x的取值有关,错误;A项,0x5,从左至右依次运算,0x为0或1,均小于5,故恒真。答案选择a选项。
内容转载于知择学习网,更多内容可上站内搜索关键词计算机等级考试。