C语言第3章习题
C语言 第3章
【例3.2】下列选项中,哪一个是C语言中合法的常量 。
(A)1.52e(B)1/4(C)’X’ (D)”x”’y’
解答:实数的指数形式中,e后面必须有一个整数;1/4是表达式,不是常量;单弓号括起来的一个字符为字符常量,而字符串常量是用双引号括起来的字符序列。因此,本题正确答案为(C)。
【例3.3】下列形式的常数中,C程序不允许出现的是 。
(A).45(B)±123(C)25.6e-2(D)4e3
解答:C程序允许出现的常数为有一确定值的整数、实数(可用小数形式或指数形式)等。±123不允许出现。因此,本题正确答案为(B)。
【例3.4】下列各组字符序列中,可用作C语言程序标识符的一组字符序列是 。
(A)S.b,sum,average,_above(B)class,day,lotusj,2day
(C)#md,&12x,month,student_nl(D)D56,r_l_2,name,_st_1
解答:C语言规定标识符只能由字母、数字和下划线3种字符组成,而且第一个字符必须是字母或下划线。因此,本题正确答案为(D)。
【例3-5】下列变量说明中,正确的是 。
(A)char:abc;(B)char a;b;c;
(C)im x;z;(D)int x,z;
解答:同时说明多个变量为同一类型时,变量之间应用逗号分隔,以分号结束。因此,本题正确答案为(D)。
【例3—6】下列字符序列中,不可用作C语言标识符的是 。
(A)b70(B)no.1(C)_symbol(D)a_1
解答:C语言中,除字母、数字和下划线外,其他字符不得用于标识符。因此,本题正确答案为(B)。
【例3.7】下列数据中,为字符串常量的是 。
(A) ’A’(B)”house”(C)Howdoyoudo.(D) ’Sabc’
解答:字符串常量是用一对双引号括起来的字符序列。因此,本题正确答案为(B)。
【例3—8】下列字符序列中,不合法的用户标识符为 。
(A)name(B)_old(C)char(D)turbo_c
解答:在C语言中,规定标识符只能由字母、数字和下划线3种字符组成,而且第一个字符必须是字母或下划线。char是C语言关键字,不能用作用户标识符。因此,本题正确答案为(C)。
【例3-9】执行以下语句的结果为 。
Y=10;x=y++;
(A)x=10,y=10(B)x=11,y=11
(C)x=10,y=11 (D)x=11,y=10
解答:执行语句x=y++,先将Y的值10赋给X,然后y自增。因此,本题正确答案为(C)。
【例3—10】先用下列语句定义字符型变量:char c;然后要将字符a赋给变量c,则下列语句中正确的是 。
(A)c=’a’;(B)c=”a”(C)c=”97”(D)c=’97’
解答:c被定义为字符型变量,则不能将一个字符串赋给变量c,因而选项(B)、(C)不正确。要将字符a赋给c,可以将字符…a直接赋给c,即选项(A)。也可以将字符…a对应的ASCII码97赋给c,此时97为整型,不能用引号括起。因此,本题正确答案为(A)。
【例3—11】执行下列语句的结果为 。
i=3:
printf(”%d,”,++i);
printf(”%d”,i++);
(A)3,3(B)3,4(C)4,4(D)4,5
解答:++i是在使用i之前,先使i的值加1,i++是在使用i之后,使i的值加1。当执行语句i=3后,在执行语句printf(”%d,”,++i)时以及之后,i的值均为4,接着执行printf(”%d’’,i++)语句,i的值仍然为4。因此,本题正确答案为(C)。
【例3—121已知x=3,y=2,则表达式x*=y+8的值为 。
(A)2(B)3(C)10(D)30
解答:表达式x*=y+8等同于x=x*(y十8),所以其值为3*(8+2)=30。
因此,本题正确答案为(D)。
【例3-13】设x=2.5,y=4.7,a=7,算术表达式x+a%3*(int)(x+y)%2/4的值为 。
(A)2.5(B)7(C)4.7(D)2.75
解答:取模运算只能在整型数据之间进行,a为整型变量。因为%、*、/这3个运算符的优先级别相同,而类型转换符优先于*、/运算符,a的值为7,7%3=1,又因为(int)(2.5+4.7)=7,1*7=7,7%2=1,1/4=0,所以表达式x+a%3*(int)(x+y)%2/4=x+0=2.5。因此,
本文解析了C语言中的常量、标识符、变量声明、字符串及表达式的概念与使用方法,并通过具体例题帮助理解。
2435

被折叠的 条评论
为什么被折叠?



