C语言程序设计课件源程序及习题答案习题三 答案 联系客服

发布时间 : 星期一 文章C语言程序设计课件源程序及习题答案习题三 答案更新完毕开始阅读0f0232bc250c844769eae009581b6bd97f19bc86

习 题 三

3.1 选择题

(1)下列运算符中优先级按从高到低依次排列的是 D 。 A.&& ! || B.|| && ! C.&& ! || D.! && || (2)下面表达式值为0的是 C 。 A.3%5 B.3/5.0 C.3>5 D.3<5 (3)关于if语句后面一对括号中的表达式,叙述正确的是 D 。 A.只能用关系表达式 B.只能用逻辑表达式 C.只能用关系表达式或逻辑表达式 D.可以使用任意合法的表达式 (4)对switch后括号内的表达式,叙述正确的是 C 。 A.只能是数字 B.可以是浮点数 C.只能是整型数据或字符型数据 D.以上叙述都不对

(5)iX=2,iY=3,ch='a',表达式iZ=(iX||iY)&&(ch>'A')的值是 D 。 A.true B.false C.0 D.1 (6)表达式(6!=8)&&('A'<'a')的值是 B 。

A .true B.1 C.0 D.非0值 (7) int k = x>y? (x>z?x:z) : (y>z?y:z) 语句的目的是: A A 求 x, y, z 最大值 B. 求 x, y, z 最小值 C 求 x, y, z 中间值 D 求 x, y, z 平均值 (8)有如下程序段

int a=14,b=15,x; char c=’A’;

x=(a&&b)&&(c<’B’);

执行该程序段后,x的值为( D ) A ture B false C 0D 1

(9) 以下程序的输出结果是( B ) main() {

int a=0,i=1; switch(i)

{

case 0:

case 3:a+=2; case 1:

case 2:a+=3;

default:a+=5;

}

printf(\ }

A 3 B 8C10D 2

3.2 填空题

(1)下面程序的输出结果是 2 。

#include \main() {int i,j; i=j=2; if(i= =1) if(i==2) printf(\ else printf(\–j); printf(\

(2)下面程序的输出结果是

iX=3 iX>3

iX unknow 。

#include \main() {int iX=3; }

switch(iX) { case 1: }

case 2:printf(\case 3:printf(\case 4:

case 5:printf(\default:printf(\

(3)以下程序的运行结果是iM=3,iN=4,iT=3 。

#include \main()

{int iM,iN,iT,iA=2,iB=3; iM=(++iA==--iB)?– –iA:++iB; iN=++iA;

iT=iB;

printf(\}

(4)下面程序的输出结果是 x 。

#include \main()

{char chT='w',chA='m',chB='d',chC='x',chM; chM=(chT>chA)?chT:chA; chM=(chM>chB)?chM:chB chM=(chM>chC)?chM:chC; printf(\}

(5)下面程序的功能是判断一个三位数是否为水仙花数,填空使程序完整。所谓水仙花数就是该数各位上数字的立方之和等于该数。

#include \main()

{ int iNum,iH,iT,iS,iSum;

printf(\ scanf(\ iS=iNum; iT=iNum/10 ; iH=iNum/100;

if(iS*iS*iS+iT*iT*iT+iH*iH*iH==iNum ) printf(\是水仙花数。\\n\ else

printf(\不是水仙花数。\\n\}

/*取得个位上的数*/ /*取得十位上的数*/ /*取得百位上的数*/

3.3 编程题

(1)从键盘输入一个年份值,判断是否闰年。设iYear为某一年份,iYear为闰年的条件为:iYear可以被4整除且不可以被100整除,或者iYear可以被400整除。

#include \#include \

int main(void) {

/* 此处添加你自己的代码 */ int iYear;

printf(\

scanf(\

if(iYear@0==0||(iYear%4==0&&iYear0!=0)) printf(\ else

printf(\ getch(); return 0;

}

(2)从键盘输入三个整数,按由小到大的顺序输出。 #include \main()

{int i,j,k,max;

scanf(\ max=i>j?i:j;

max=max>k?max:k; printf(\ getch();

}

(3)假设星期一至星期五每工作一小时的工资是20元,星期六和星期日每工作一小时的工资是平时的3倍,其中工资的4.5%是税金。试编一程序从键盘输入星期序号(1,2,3,4,5,6,7,分别表示星期一至星期天)和工作小时数,计算该日的工资及应交税金。

#include \#include \

int main(void) {

/* 此处添加你自己的代码 */ int iWeek,iHours ; float fSalary,fTaxes;

printf(\ scanf(\

printf(\ scanf(\ switch(iWeek){ case 1: case 2: case 3:

case 4: case 5:

fSalary=20*iHours; fTaxes=fSalary*0.045; break;