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 B)20,30,40

C)a=20,b=30,c=40 D)a=10]20,b=30]20,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)子程序


本文标签: 输出 输入 格式 程序 结果