一. 单选题(共40题,100分)
- (单选题)下面程序的输出是()
#include<stdio.h>
void main()
{ int k=11;
printf(“k=%d,k=%o,k=%x\n”,k,k,k);
}
A. k=11,k=12,k=11
B. k=11,k=13,k=13
C. k=11,k=013,k=0xb
D. k=11,k=13,k=b
我的答案: D:k=11,k=13,k=b;正确答案: D:k=11,k=13,k=b;
2.5分
答案解析: - (单选题)在下列选项中,不正确的赋值语句是( )
A. ++t;
B. n1=(n2=(n3=0));
C. k=i=j;
D. a=b+c=1;
我的答案: D:a=b+c=1;;正确答案: D:a=b+c=1;;
2.5分 - (单选题)下面合法的C语言字符常量是()
A. ‘\t’
B. “A”
C. 65
D. A
我的答案: A:‘\t’;正确答案: A:‘\t’;
2.5分 - (单选题)表达式: 10!=9的值是()
A. true
B. 非零值
C. 0
D. 1
我的答案: D:1;正确答案: D:1;
2.5分 - (单选题)C语言提供的合法的数据类型关键字是()
A. Double
B. short
C. integer
D. Char
我的答案: B:short;正确答案: B:short;
2.5分 - (单选题)字符(char)型数据在微机内存中的存储形式是()
A. 反码
B. 补码
C. EBCDIC码
D. ASCII码
我的答案: D:ASCII码;正确答案: D:ASCII码;
2.5分 - (单选题)C语言程序的基本单位是()
A. 程序行
B. 语句
C. 函数
D. 字符
我的答案: C:函数;正确答案: C:函数;
2.5分 - (单选题)设 int a=12,则执行完语句a+=a-=a*a后,a的值是()
A. 552
B. 264
C. 144
D. -264
我的答案: D:-264;正确答案: D:-264;
2.5分 - (单选题)执行下面程序中的输出语句后,输出结果是()
#include<stdio.h>
void main()
{int a;
printf(“%d\n”,(a=35,a4,a+5));
}
A. 65
B. 20
C. 15
D. 10
我的答案: B:20;正确答案: B:20;
2.5分 - (单选题)下面程序的输出是()
#include<stdio.h>
void main()
{int x=023;
printf(“%d\n”,–x);
}
A. 17
B. 18
C. 23
D. 24
我的答案: B:18;正确答案: B:18;
2.5分 - (单选题)下面程序的输出的是()
#include<stdio.h>
void main()
{int x=10,y=3;
printf(“%d\n”,y=x/y);
}
A. 0
B. 1
C. 3
D. 不确定的值
我的答案: C:3;正确答案: C:3;
2.5分 - (单选题)已知字母A的ASCII码为十进制的65,下面程序的输出是()
#include<stdio.h>
void main()
{char ch1,ch2;
ch1=‘A’+‘5’-‘3’;
ch2=‘A’+‘6’-‘3’;
printf(“%d,%c\n”,ch1,ch2);
}
A. 67,D
B. B,C
C. C,D
D. 不确定的值
我的答案: A:67,D;正确答案: A:67,D;
2.5分 - (单选题)若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()
A. a<>0
B. !a
C. a=0
D. a
我的答案: D:a;正确答案: D:a;
2.5分 - (单选题)以下程序的输出结果是()
#include<stdio.h>
void main()
{ int x=10,y=10;
printf(“%d %d\n”,x–,–y);
}
A. 10 10
B. 9 9
C. 9 10
D. 10 9
我的答案: D:10 9;正确答案: D:10 9;
2.5分 - (单选题)设有如下定义:
int x=10,y=3,z;
则语句
printf(“%d\n”,z=(x%y,x/y));
的输出结果是()
A. 1
B. 0
C. 4
D. 3
我的答案: D:3;正确答案: D:3;
2.5分
答案解析: - (单选题)为表示关系x≥y≥z,应使用C语言表达式()
A. (x>=y)&&(y>=z)
B. (x>=y)AND(y>=z)
C. (x>=y>=z)
D. (x>=y) & (y>=z)
我的答案: A:(x>=y)&&(y>=z);正确答案: A:(x>=y)&&(y>=z);
2.5分 - (单选题)C语言中非空的基本数据类型包括()
A. 整型,实型,逻辑型
B. 整型,实型,字符型
C. 整型,字符型,逻辑型
D. 整型,实型,逻辑型,字符型
我的答案: B:整型,实型,字符型;正确答案: B:整型,实型,字符型;
2.5分 - (单选题)若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
printf(“%d”,(x,y));
上面程序片段的输出结果是()
A. 200
B. 100
C. 100 200 .
D. 输出格式符不够,输出不确定的值
我的答案: A:200;正确答案: A:200;
2.5分 - (单选题)阅读下面的程序
#include<stdio.h>
void main()
{
char ch;
scanf(“%3c”,&ch);
printf(“%c”,ch);
}
如果从键盘上输入
abc<回车>
则程序的运行结果是()
A. a
B. b
C. c
D. 程序语法出错
我的答案: A:a;正确答案: A:a;
2.5分 - (单选题)阅读下面的程序
#include<stdio.h>
void main()
{
int i,j;
i=010;
j=9;
printf(“%d,%d”,i-j,i+j);
}
则程序的运行结果是()
A. 1,19
B. -1,19
C. 1,17
D. -1,17
我的答案: D:-1,17;正确答案: D:-1,17;
2.5分 - (单选题)阅读下面的程序
#include<stdio.h>
void main()
{
int i,j,m,n;
i=8;j=10;
m=++i;
n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
}
程序的运行结果是()
A. 8,10,8,10
B. 9,11,8,10
C. 9,11,9,10
D. 9,10,9,11
我的答案: C:9,11,9,10;正确答案: C:9,11,9,10;
2.5分
答案解析: - (单选题)已知a=12,则表达式a+=a-=a*=a的结果是()
A. 0
B. 144
C. 12
D. -264
我的答案: A:0;正确答案: A:0;
2.5分 - (单选题)若已定义int a,则表达式a=10,a+10,a++的值是()
A. 20
B. 10
C. 21
D. 11
我的答案: B:10;正确答案: B:10;
2.5分 - (单选题)阅读下面的程序
#include<stdio.h>
void main()
{
int i,j;
scanf(“%3d%2d”,&i,&j);
printf(“i=%d,j=%d\n”,i,j);
}
如果从键盘上输入1234567<回车>,则程序的运行结果是()
A. i=123,j=4567
B. i=1234,j=567
C. i=1,j=2
D. i=123,j=45
我的答案: D:i=123,j=45;正确答案: D:i=123,j=45;
2.5分 - (单选题)下面程序的输出结果是()
#include<stdio.h>
void main()
{
int a=-1, b=4, k;
k=(++a<=0)&&(b–<=0);
printf(“%d,%d,%d\n”,k,a,b);
}
A. 1,1,2
B. 1,0,3
C. 0,1,2
D. 0,0,3
我的答案: D:0,0,3;正确答案: D:0,0,3;
2.5分 - (单选题)下面程序的输出结果是()
#include<stdio.h>
void main()
{
int a=5,b=3;
float x=3.14, y=6.5;
printf(“%d,%d\n”,a+b!=a-b,x<=(y-=6.1));
}
A. 1,0
B. 0,1
C. 1,1
D. 0,0
我的答案: A:1,0;正确答案: A:1,0;
2.5分 - (单选题)执行下面程序段后,输出结果是()
int a;
int b=65536;
a=b;
printf(“%d\n”,a);
A. 65536
B. 0
C. -1
D. 1
我的答案: A:65536;正确答案: A:65536;
2.5分 - (单选题)若有以下定义和语句:
int a=010, b=0x10, c=10;
printf(“%d,%d,%d\n”,a,b,c);
则输出结果是()
A. 10,10,10
B. 8,16,10
C. 8,10,10
D. 8,8,10
我的答案: B:8,16,10;正确答案: B:8,16,10;
2.5分 - (单选题)已知有double型变量x=2.5,y=4.7,整型变量a=7,
则表达式 x+a%3*(int)(x+y)%2/4 的值是_____B____.
A. 2.4
B. 2.5
C. 2.75
D. 0
我的答案: B:2.5;正确答案: B:2.5;
2.5分 - (单选题)若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是()
A. 5.5
B. 5
C. 3
D. 4.0
我的答案: C:3;正确答案: C:3;
2.5分 - (单选题)以下程序的输出结果是()
#include<stdio.h>
void main()
{
int a=12, b=12;
printf(“%d,%d\n”,–a,++b);
}
A. 10,10
B. 12,12
C. 11,10
D. 11,13
我的答案: D:11,13;正确答案: D:11,13;
2.5分 - (单选题)设有以下语句:int x=10;x+=3+x%(3),则x的值是 ()
A. 14
B. 15
C. 11
D. 12
我的答案: A:14;正确答案: A:14;
2.5分 - (单选题)若d为double型变量,则表达式d=1,d+5,d++的值是()
A. 1
B. 6.0
C. 2.0
D. 1.0
我的答案: D:1.0;正确答案: D:1.0;
2.5分 - (单选题)表达式5!=3的值是()
A. T
B. 非零值
C. 0
D. 1
我的答案: D:1;正确答案: D:1;
2.5分 - (单选题)若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值()
A. 0
B. 1
C. 12
D. 6
我的答案: A:0;正确答案: A:0;
2.5分 - (单选题)若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是()
A. 0
B. 2
C. 1.5
D. 1
我的答案: D:1;正确答案: D:1;
2.5分 - (单选题)在C语言中,以下叙述不正确的是()
A. 在C程序中,无论是整数还是实数,都能被准确无误的表示
B. 在C程序中,变量名代表存储器中的一个位置
C. 静态变量的生存期与整个程序的生存期相同
D. C语言中变量必须先定义后引用
我的答案: A:在C程序中,无论是整数还是实数,都能被准确无误的表示;正确答案: A:在C程序中,无论是整数还是实数,都能被准确无误的表示;
2.5分 - (单选题)C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符()
A. 必须为字母
B. 必须为下划线
C. 必须为字母或下划线
D. 可以是字母,数字或下划线中的任意一种
我的答案: C:必须为字母或下划线;正确答案: C:必须为字母或下划线;
2.5分 - (单选题)设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是()
A. float
B. char
C. int
D. double
我的答案: D:double;正确答案: D:double;
2.5分 - (单选题)一个C语言的执行是从()
A. 本程序的主函数开始,到本程序的主函数结束
B. 本程序的第一个函数开始,到本程序的最后一个函数结束
C. 本程序的主函数开始,到本程序的最后一个函数结束
D. 本程序的第一个函数开始,到本程序的主函数结束
我的答案: A:本程序的主函数开始,到本程序的主函数结束;正确答案: A:本程序的主函数开始,到本程序的主函数结束;