单选题:
1.有以下程序:
#include
main()
{
int k=-17;
printf("%d,%o,%x\n",k,1-k,1-k);
}
程序的运行结果是( )。
A.-17,22,12
B.-17,12,22
C.-17,-22,-l2
D.17,22,12
2.有以下程序段:
char ch;
int k;
ch='a';
k =12;
printf("%c,%d,",ch,ch,k);
printf("k=%d\n",k);
已知字符a的ASCII码十进制值为97,则执行上述程序段后输出的结果是( )。
A.因变量类型与格式描述符的类型不匹配输出无定值
B.输出项与格式描述符个数不符,输出为零值或不定值
C.a,97,12k=12
D.a,97,k=12
3.有以下程序:
#include
main()
{
int a=1,b=0;
printf("%d,",b=a+b);
printf("%d\n",a=2*b);
}
程序运行后的输出结果是( )。
A.0,0
B.1,0
C.3,2
D.1,2
4.程序段:
int x=12;
double y=3.141593;
printf("%d%8.6f",x,y);
输出结果是( )。
A.123.141593
B.123.141493
C.12,3.141593
D.123.1415930
5.有以下程序
#include
main()
{
int a=2,c=5;
printf("a=%%d,b=%%d\n",a,c);
}
程序运行后的输出结果是( )。
A.a=2,b=5
B.a=%2,b=%5
C.a=%d,b=%d
D.a=%%d,b=%%d
6.有以下程序:
#include
main()
{
char a,b,c,d;
scanf("%c%c",&a,&b);
c=getchar();
d=getchar();
printf("%c%c%c%c\n",a,b,c,d);
}
当执行程序时,按下列方式输入数据(从第一列开始,代表回车,注意:回车是一个字符) 12 34 则输出结果是( )。
A.123
B.12
C.1234
D.1234
7.设有:char s[5],c;,则调用函数scanf能正确给s和c读入数据的是( )。
A.scanf("%s%c",s,c);
B.scanf("%d%c",&s,&c);
C.scanf("%d%c",s,&c);
D.scanf("%s%c",s,&c);
8.设有定义: int a,b; float x,y;
则以下选项中对语句所作的注释叙述错误的是( )。
A.scanf("%d%d%f",&a,&b); /*多余的格式符%f完全不起作用 */
B.scanf("%d%d",&a,&b,&x); /*多余的输入项不能获得输入数据*/
C.scanf("%d%f%d",&a,&b,&x); /*输入项与格式符类型不匹配,变 量b和x得不到正确的输入数据*/
D.scanf("Input:%d%d",&a,&b); /*格式串中允许加入格式符以外的字符串*/
9.若有定义和语句
int a,b;
scanf("%d,%d",&a,&b);
以下选项中的输入数据,不能把值3赋给变量 a、5赋给变量b的是( )(说明:符号u表示空格)。
A.3,5,
B.3,5,4
C.3,u5
D.3,5
10.若有定义: int a,b;
通过语句 scanf("%d;%d",&a,&b); 能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A.3 5
B.3,5
C.3;5
D.35
11.若有定义: int a,b; 通过语句 scanf("%d;%d",&a,&b); 能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A.3,5
B.3;5
C.3 5
D.35
12.设有以下语句:
char ch1,ch2;
scanf("%c%c",&ch1,&ch2);
若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是 ( )。
A.A和B之间用逗号间隔
B.A和B之间不能有任何间隔符
C.A和B之间可以用回车间隔
D.A和B之间用空格间隔
13.有以下程序段:
char c1,c2,c3;
scanf("%c%c%c",&c1,&c2,&c3);
若要给c1、c2、c3分别输入字母A、B、C,则以下对输入形式的描述正确的是( )。
A.字母A、B、C之问可以用空格分隔
B.字母A、B、C之间不能有分隔符
C.字母A、B、C之间可以用回车符分隔
D.字母A、B、C之间可以用Tab键分隔
14.若有定义: int a; float b; double c;
程序运行时输入:a=1,b=2,c=3<回车>,能把值1输入给变量a、值2输入给变量b、值3输入给变量c的输入语句是( )。
A.scanf("a=%d,b=%f,c=%lf",&a,&b,&c);
B.scanf("%d%f%lf",&a,&b,&c);
C.scanf("a=%d,b=%lf,c=%lf",&a,&b,&c);
D.scanf("a=%d,b=%f,c=%f",&a,&b,&c);
程序填空题:
下面程序的功能是输出1到100之间每位数的乘积大于每位数的和的数。例如数字26,数位上数字的乘积12大于数字之和8。
main()
{
int n,k=1,s=0,m;
for(n=1;n<=100;n++)
{
k=1;
s=0;
① ;
while( ② )
{
k*=m%10;
s+=m%10;
③ ;
}
if(k>s)
printf("%d",n);
}
}
扫码免费领取章节练习答案解析