float f=2.0;
printf(\\\n\ printf(\\\n\ printf(\\\n\
printf(\\\n\ printf(\\\n\ printf(\\\n\}
【答】①:1 (a+2=3,c-100=-3,表达式结果=1(真)) ②:1(a>c的结果是0(假),f>4的结果是0,表达式结果=1) ③:1(!a的结果是0,!f的结果是0,表达式结果=1) ④:1(!a&&1的结果是0,!c||1的结果是1,表达式结果=1)
⑤:0(!a>2的结果是0,(!a>2)?3:0的结果是0,f!=1的结果是1,(f!=1)?0:1的结果是0,表达式结果=0)
⑥:1((1,2,3)表达式的结果是3,(3,3,3)的结果是3
6
练习题3及参考答案
1. 单项选择题
(1)以下说法正确的是 。
A. 输入项可以为一个实型常量,如scanf(\
B. 只有格式控制没有输入项也能进行正确输入,如scanf(\
C. 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(\D. 当输入数据时,必须指明变量的地址,如scanf(\【答】D
(2)若a为整型变量,则以下语句 。 a=-2L;
printf(\
A. 赋值不合法 B. 输出值为-2 C. 输出为不确定值 D. 输出值为2 【答】B
(3)若x和y均定义为int型,z定义为double型,以下scanf()函数调用语句不合法的是 。 A. scanf(\C. scanf(\【答】scanf()函数中没有精度控制。本题答案为D。
(4)若a,b,c均定义为int型,要给它们输入数据,正确的输入语句是 。
A. read(a,b,c); B. scanf(\C. scanf(\【答】D
(5)若有定义和语句: int n=10; printf(\其输出结果是 。
A. 输出10 B. 输出一空行 C. 没有输出 D. 编译不通过 【答】D
(6)若a是float型变量,b是unsigned型变量,以下输入语句中合法的是 。 A. scanf(\C. scanf(\【答】C
(7)字母a的ASCII码为97,则下列语句的运行结果为 。 char a='a'; a--;
printf(\
A. b,c B. a--运算不合法,故有语法错
C. 98,c D. 格式描述和输出项不匹配,输出无定值 【答】C
7
(8)若k1,k2,k3,k4均为int型变量,为了将整数10赋给k1和k3,将整数20赋给k2和k4,则对应以下scanf()函数调用语句的正确输入方式是 。 scanf(\scanf(\A. 1020 B. 10 20 C. 10,20 D. 10 20 1020 10 20 10,20 10,20 【答】D
(9)有如下程序,输入数据12345 678↙后,x的值是 ① ,y的值是 ② 。 #include
int x; float y;
scanf(\} ①
A.
12345
B.
123
45 D.345
② A. 45.000000 B. 45678.000000 C. 678.000000 D.123.000 【答】① B ② A
(10)有如下程序,输入数据25,13,10↙后,正确的运行结果是 。 #include
int x,y,z;
scanf(\ printf(\}
A. x+y+z=48 B. x+y+z=35 C. x+y+z=38 D. 不确定值 【答】输入的数据与scanf()函数的格式不匹配。本题答案为D。
(11)有如下程序,输入数据12 345↙后,x的值是 ① ,y的值是 ② 。 #include
int x; float y;
scanf(\}
8
C.
① A. 12 B. 123 C. 12345 D. 0 ② A. 12.000000 B. 345.000000 C. 12345.000000 D. 0.000000 【答】① A ② B
(12)有如下程序,输入数据9876543210↙后,程序的运行结果是 。 #include
int a; float b,c;
scanf(\ printf(\}
A. a=98,b=765,c=4321 B. a=10,b=432,c=8765 C. a=98,b=765.000000,c=4321.000000 D. a=98,b=765.0,c=4321.0 【答】C
(13)以下程序的运行结果是 。 #include
float a=3.1415; printf(\}
A. |3.1415| B. | 3.0| C. | 3| D. | 3.| 【答】C
(14)以下程序的运行结果是 。 #include
float a=3.1415; printf(\}
A. |000003| B. |3.1415| C. |00003.0| D. | 3| 【答】A
(15)以下程序的运行结果是 。 #include
float a=3.1415; printf(\}
A. |3 | B. |000003| C. |3.1415| D. |3.0 | 【答】A
(16)以下程序的运行结果是 。 #include
9
main() {
int i=010,j=10;
printf(\}
A. 11.10 B. 9,10 C. 010,9 D. 10,9 【答】B
(17)以下程序的运行结果是 。 #include
int x=10,y=10;
printf(\}
A. 10,10 B. 9,9 C. 9,10 D. 10,9 【答】D
2. 填空题
(1)以下程序的运行结果是 。 #include
float f=3.1415927;
printf(\}
【答】3.141593,3.1416,3.142 (2)以下程序的运行结果是 。 #include
float f=3.5;
printf(\}
【答】3.500000,3.5
(3)以下程序的运行结果是 。 #include
float f=31.41592; printf(\}
【答】31.415920,3.141592e+001 (4)以下程序的运行结果是 。
10