发布时间 : 星期一 文章C语言程序设计答案(第三版)杜友福版[优质文档]更新完毕开始阅读726796e33d1ec5da50e2524de518964bce84d272
if(a<60) m=1; else if(a<70) m=2;
else if(a<80) m=3;
else if(a<90) m=4; else m=5; 方法1
#include
int a,m;
scanf(\ switch(a/10) {
case 0:case 1:case 2:case 3:
case 4:case 5:m=1;break; case 6:m=2;break; case 7:m=3;break; case 8:m=4;break; default:m=5;break; }
printf(\}
方法2
#include
int a,m;
scanf(\m=0;
switch(a/10) {
default:m++; case 8:m++; case 7:m++; case 6:m++;
case 5:case 4:case 3:case 2: case 1:case 0:m++; }
printf(\}
2. 编写程序,从键盘输入一个整数,打印出它是奇数还是偶数。 #include
int a;
scanf(\ if(a%2==1)
printf(\ else
printf(\}
3. 编写程序,从键盘输入一个字符,判别它是否是小写字母,如果是,将它转换为大写字母;如果不是,不转换。然后输出最后得到的字符。 #include
char ch;
scanf(\ if(ch>='a' && ch<='z') ch=ch-32; printf(\}
4. 编写程序,从键盘输入一个不多于4位的正整数,打印出它是几位数。 #include
int x,n;
scanf(\ if(x>1000) n=4;
else if(x>100) n=3; else if(x>10) n=2; else n=1; printf(\}
5. 当一个人的月收入在3500元以下时免税;月收入在3500元到5000元之间时,超过3500的部分纳税3%;月收入在5000元以上时,3500至5000之间的部分纳税3%,超过5000的部分纳税10%。编写程序从键盘输入月收入income,计算并输出应交税款tax。 #include
int income; float tax;
scanf(\ if(income<=3500) tax=0;
else if(income<=5000) tax=0.03*(income-3500);
else tax=0.03*(5000-3500)+0.10*(income-5000); printf(\}
6. 回文是指正读和反读都一样的数或字符串。例如:12321、55455、35553等都是回文。请编写一个程序,从键盘上读取一个包含五位数字的长整数,并判断它是否是回文。(提示:用除法运算和求余运算把一个数的个位、十位、百位、千位等分别分离出来。) #include
long x;
int a,b,d,e;
scanf(\a=x/10000;
b=x000/1000; d=x0/10; e=x;
if(a==e && b==d)
printf(\ else
printf(\}
习题五 一、阅读题 1. 8 2. 4321 3. X 4. -1 5. 23 6. 52 7. 5 8. 3
二、填空题 1. 18 2. 2 3. b=i+1 4. 17
5. i<=9 、 j%3!=0
6. d=1.0 、 k=k+1 、 k<=10
三、选择题
1~8:A D D A B D D A
四、编程题
1. 编写程序,打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字的立方之和等于该数本身。例如,407是一个“水仙花数”,因为407=43+03+73。(注:若
将题意改为打印出最大的或最小的“水仙花数”,则应将循环语句作如何调整?)。 #include
int a,b,c,k;
for(k=100;k<=999;k++)
//求最大的“水仙花数”改用:for(k=999;k>=100;k--) {
a=k/100;b=k/10;c=k;
if(k==a*a*a+b*b*b+c*c*c) { printf(\
//求最大或最小”水仙花数”时增加一个语句:break; } }
printf(\}
2. 编写程序,输出1980~2880年所有闰年的年号。每输出5个年号换一行。 #include
int k,flag,n=0;
for(k=1980;k<=2880;k++) {
flag=(k%4==0)&&(k0!=0)||(k@0==0); if(flag) { printf(\ n++; if(n==0) printf(\ } }
printf(\}
3. 编写程序,求1-3+5-7+…-99+101的值。 #include
int n,t=1,s=1;
for(n=3;n<=101;n+=2) { t=-t; s=s+t*n; } printf(\}