B.a==11||a==12||a==13||a==14
C.a>10 && a<15
D.!(a<=10)&&(a>=15)
10.能够正确表示a不等于0为真的关系表达式是【C 】。
A.a=0
B.a≠0
C.a
D.!a
11.设有int a=04,b;变量定义,则表达式b=a<<2的值是【D 】。
A.1
B.4
C.8
D.16
二、填空题
1.C程序中的注释说明必须以开头,以结束。
答案:/*,*/
2.C语言的标识符只能由字母,数字和三种字符组成。
答案:下画线
3.在C语言中,字符串常量”How└┘are└┘you?\nI└┘am└┘fine.”的长度是个字节(其
中└┘表示空格),它在内存中存储时需要占用个字节的存储空间。
答案:23,24
4.定义字符变量ch,并使它的初值为数字字符?5?的变量定义语句是。
答案:char ch=?5?;
5.若定义float x=70.3;则表达式(long)x*?A?+38.5的值是类型。
答案:双精度实型(double)
6.若定义int a=3,b=2,c;则表达式c=b*=a-1的值为。
答案:c=b*=a-1相当于c=b=b*(a-1)=2*(3-1)=4
7.表达式9/2*2==9*2/2的值是。
答案:9/2*2=(9/2)*2=4*2=8,9*2/2=(9*2)/2=18/2=9,8==9的值是0
8.表达式(!10>3)?2+4:1,2,3的值是。
答案:该逗号表达式由条件表达式、2和3构成,逗号表达式的值为最后一个表达式的值,故为3
9.若定义了int a=1,b=15;在执行了--a&&b++; 语句后,b的值为。
答案:--a为先自减运算,及先做a=a-1=0,再取a的值0参与表达式运算,由于逻辑与运算的短路性质,其一个操作数为0,则无论另一个操作数的值为多少整个逻辑与的结果都已确定,故b++不会被执行,所以b的值仍为15
10.表达式10||20||30的值是。
答案:1
11.表达式10&0xd+06的值是。
答案:十进制10的二进制代码为1010B,十六进制数0xd的二进制代码为1101B,按位与的结果为1000B,即十进制数8,8+06=14
- 2 -
三、读程序写结果
1.#include
void main( )
{
int i=5, j=6, m=i+++j;
printf(“%d,%d,%d\n”,i,j,m);
}
答案:6,6,11
2.#include
void main( )
{
double f=3.14159;
int n;
n=(int)(f+10)%3;
printf(“%d \n”,n);
}
答案:1
3.#include
#include
void main( )
{
char s[ ]=”ab\n\\\?\r\b”;
printf(“%d,%d \n”,sizeof(s), strlen(s));
}
答案:8,7
4.#include
void main( )
{
int a=2, b=4, c=6, x, y;
y=(x=a+b),(b+c);
printf(“y=%d,x=%d \n”,y, x);
}
答案:y=6,x=6
5.#include
void main( )
{
int i, j, x, y;
i=5; j=7;
x=++i;
y=j++;
printf(“%d,%d, %d,%d \n”,i,j,x,y);
}
答案:6,8,6,7
- 3 -