admin 管理员组文章数量: 887021
2024年2月19日发(作者:哈夫曼树的构造数据结构)
一、选择题
1.在 scanf函数的格式控制中,格式说明的类型与输入的类型应该一一对应匹配。如果类型不匹配,系统 。
A)不予接收
B)并不给出出错信息,但不可能得出正确信息数据
C)能接受正确输入
D)给出出错信息,不予接收输入
2.下列说法正确的是 。
A)输入项可以是一个实型常量,如scanf("%f",4.8);
B)只有格式控制,没有输入项也能进行正确输入,如scanf("a=%d,b=%d");
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%5.3f",&f);
D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);
3.若有定义:int x,y;char a,b,c;并有以下输入数据(此处,
1 2
A B C
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是 。
A)scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();
B)scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();
C)scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);
D)scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);
4. 根据定义和数据的输入方式,输入语句的正确形式为: 。
已有定义:float a1, a2;
数据的输入方式: 4.523
3.52
A)scanf(“%f %f ”, &a1,&a2);
B)scanf(“%f ,%f ”, a1, a2);
C)scanf(“%4.3f ,%3.2f ”, &a1,&a2);
D)scanf(“%4.3f %3.2f ”, a1,a2);
5.若变量已正确说明为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.0 33.0<回车> D)10 22<回车>33<回车>
6. x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是 。
A)INPUT x、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);
7.C语言中调用printf进行输出时需要注意,在格式控制串中,格式说明与输出项的个数必须相同。如果格式说明的个数小于输出项的个数,多余的输出项将 ;如果格式说明的个数多于输出项的个数,则对于多余的格式将输出不定值(或0)。
A)不予输出 B)输出空格
C)照样输出 D)输出不定值或0
8.以下程序的输出结果是 。
main()
{
int i=010,j=10,k=0x10;
printf("%d,%d,%dn",i,j,k);
A)8,10,16 B)8,10,10 C)10,10,10 D)10,10,16
9.以下程序的输出结果是 。
main()
{
int i=011,j=11,k=0x11;
printf("%d,%d,%dn",i,j,k);
}
A)9,11,17 B)9,11,11 C)11,11,11 D)11,11,16
10.以下程序的输出结果是 。
#include
main()
{printf("%dn",NULL);}
A)不确定的值(因变量无定义) B)0
C)-1 D)1
11.以下程序的输出结果是 。
main()
{
char c1='6',c2='0';
printf("%c,%c,%d,%dn",c1,c2,c1-c2,c1+c2);
}
A)因输出格式不合法,输出出错信息 B)6,0,6,102
C)6,0,7,6 D)6,0,5,7
12.设有如下定义
int x=10,y=3,z;
则语句
printf("%dn",z=(x%y,x/y));
的输出结果是 。
A)3 B)0 C)4 D)1
13.设有如下定义
int x=10,y=5,z;
则语句
printf("%dn",z=(x+=y,x/y));
的输出结果是 。
A)1 B)0 C)4 D)3
14.以下程序的输出结果是 。
main()
{int x=10,y=10;
printf("%d %dn",x--,--y);
}
A)10 10 B)9 9 C)9 10 D)10 9
15.写出下面程序的输出结果 。
main()
{int x;
x=-3+4*5-6;printf("%d",x);
x=3+4%5-6;printf("%d",x);
x=-3*4%6/5;printf("%d",x);
x=(7+6)%5/2;printf("%d",x);
}
A)11 1 0 1 B)11 -3 2 1 C)12 -3 2 1 D)11 1 2 1
16.写出下面程序的输出结果 。
main()
{
int x,y,z;
x=y=1;
z=x++-1;printf("%d,%dt",x,z);
z+=-x++ +(++y);printf("%d,%d",x,z);
}
A)2,0 3,0 B)2,1 3,0 C)2,0 2,1 D)2,1 0,1
17.写出下面程序的输出结果 。
main()
{
int i,j;
i=20;j=(++i)+i;printf("%d",j);
i=13;printf("%d %d),i++,i);
}
A)42 14,13 B)41 14,14 C)42 13 13 D)42 13 14
函数中用到格式符"%4s",其中数字4表示输出的字符串站用4列。如果字符串长度大于4,则按原字符长从左向右全部输出;如果字符串长度小于4,则输出方式为 。
A)从左起输出该字符串,右补空格 B)按原字符长从左向右全部输出
C)右对齐输出该字符,左补空格 D)输出错误信息
19.以下C程序,正确的运行结果是 。
main()
{
long y=-34567;
printf("y=%-8ldn",y);
printf("y=%-08ldn",y);
printf("y=%08ldn",y);
printf("y=%+8ldn",y);
}
A)y= -34567 B)y=-34567
y=- 34567 y=-34567
y=-0034567 y=-0034567
y=-34567 y=+ -34567
C)y=-34567 D)y= -34567
y=-34567 y=-0034567
y=-0034567 y=00034567
y=-34567 y=+34567
20. 设有如下定义和执行语句,其输出结果为: 。
int a=3,b=3;
a = --b + 1; printf(“%d %d”,a,b);
A)3 2 B)4 2 C)2 2 D)2 3
21. 以下程序的输出结果是: 。
main( )
{ int I=012, j=12, k=0x12;
printf(“%d,%d,%dn”,I, j, k );
A)10, 12, 18 B)12, 12, 12
C)10, 12, 12 D)12, 12, 18
22. 以下程序的输出结果是:(注:▂表示空格) 。
main( )
{ printf(“n*s1=%8s*”, “china”);
printf(“n*s2=%-5s*”, “chi”) ; }
A)*s1=china▂ ▂ ▂* B)*s1=china▂ ▂ ▂*
*s2=chi* *s2=chi▂ ▂*
C)*s1=▂ ▂ ▂china* D)*s1=▂ ▂ ▂china*
*s2=▂ ▂chi * *s2=chi▂ ▂*
23. 已有定义int a=-2;和输出语句 printf("%8lx",a);以下正确的叙述是 。
A)整型变量的输出形式只有%d一种
B)%x是格式符的一种,它可以适用于任何一种类型的数据
C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的
D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
24. 下列程序段的输出结果是: 。
int a=1234;
float b=123.456;
double c=12345.54321;
printf("%2d,%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
25.若已定义:int a=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
26.请选出以下语句的输出结果 。
printf("%d\n",strlen("\t\"\065\xff\n"));
A)5 B)14
C)8 D)输出项不合法,无正常输出
27.下列程序的输出结果是 。
main()
{ double d=3.2; int x,y;
x=1.2; y=(x+3.8)/5.0;
printf("%d\n", d*y);
}
A)3 B)3.2 C)0 D)3.07
28.根据题目中已给出的数据的输入和输出形式,程序中输入/输出语句的正确是 。
main()
{
int a;float x;
printf("input a,x:");
输入语句
输出语句
}
输入形式 input a,x:3 2.1
输出形式a+x=5.10
A)scanf("%d,%f",&a,&x);
printf("na+x=%4.2f",a+x);
B)scanf("%d %f",&a.&x);
printf("na+x=%4.2f",a+x);
C)scanf("%d %f",&a,&x);
printf("na+x=%6.1f",a+x);
D)scanf("%d %3.1f",&a,&x);
printf("na+x=%4.2f",a+x);
29.现有以下程序段
#include
main()
{ int a,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
C)a=20,b=30,c=40
[注]: “]”表示空格,
30.执行下列程序时输入:123<空格>456<空格>789<回车> 输出结果是 。
main()
{ char s[100]; int c, 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
31.调用gets和puts函数时,必须包含的头文件是 。
A)stdio.h B)stdlib.h C)define D)以上都不对
32.阅读下面程序段 。
#include "stdio.h"
main()
{ char c;
c=(′z′-′a′)/2+′A′;
putchar(c);}
输出结果为
A)M B)N C)O D)Q
33.若已知a=10,b=20,则表达式!a
A)10 B)20 C)1 D)0
34. C程序的基本编译单位是 。
A)函数 B)文件 C)源文件 D)子程序
版权声明:本文标题:C语言期末试题选择 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1708273024h518351.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论