C语言课后答案.docx
- 文档编号:6960325
- 上传时间:2023-01-13
- 格式:DOCX
- 页数:28
- 大小:23.24KB
C语言课后答案.docx
《C语言课后答案.docx》由会员分享,可在线阅读,更多相关《C语言课后答案.docx(28页珍藏版)》请在冰豆网上搜索。
C语言课后答案
第3章
三、编程题
1.编写程序,输入一个非负数,输出以此数为半径的圆周长以及面积。
#include"stdio.h"
#definePI3.1415
voidmain()
{
floatr,area,circumference;
scanf("%f",&r);
area=PI*r*r;
circumference=2*r*PI;
printf("area=%6.2f\ncircumference=%6.2f\n",area,circumference);
}
2.编写程序,输出下面结果,注意,双引号也要输出:
“I'mastudent!
”
#include
voidmain()
{
printf("\"I\'mastudent!
\"\n");
}
3.编写程序,输入一个小写字母,将其转换为大写字母输出。
例如输入b,则输出B。
提示:
小写字母和对应的大写字母的ASCII码值相差32。
voidmain()
{
charch;
ch=getchar();
ch-=32;
putchar(ch);
//printf("%c",ch);
}
4.编写程序,输入一个华氏温度f,输出其相应的摄氏温度c。
华氏温度和摄氏温度的转换公式为:
#include
voidmain()
{
floatf,c;
scanf(“%f”,&f);
c=5.0*(f-32)/9;
printf(“华氏温度%5.2f转换为摄氏温度为:
%5.2f\n”,f,c);
}
第4章
三、编程题
1.输入一个整数,判断这个整数是奇数还是偶数(提示:
整数的奇偶性可以利用取余运算符%判定)。
#include
voidmain()
{
inta;
scanf("%d",&a);
if(a%2)
printf("奇数\n");
else
printf("偶数\n");
}
2.编写程序,输入一个24小时制的时间,转换为12小时制时间后进行输出。
以13点15分为例,输入:
13:
15,则输出:
下午1:
15。
#include
voidmain()
{
inthour,minute;
scanf("%d:
%d",&hour,&minute);
if(hour>12)hour=hour-12;
printf("%d:
%d\n",hour,minute);
}
3.输入年号,判断它是否是闰年(如果年号能被400整除,或能被4整除,而不能被100整除,则是闰年,否则不是)。
voidmain()
{
intyear;
scanf("%d",&year);
if(year%400==0||(year%4==0&&year%100==0))
printf("%d是闰年\n",year);
else
printf("%d不是闰年\n",year);
}
4.输入一个字符,如果是大写字母则输出对应的小写字母,如果是小写字母则输出相应的大写字母,如果都不是则原样输出。
#include
voidmain()
{
charch;
scanf("%c",&ch);
if(ch>='a'&&ch<='z')
ch-=32;
else
if(ch>='A'&&ch<='Z')
ch+=32;
printf("\n%c\n",ch);
}
5.设计一个简单的计算器程序,能输入整型运算数和基本运算符(+,-,*,/),输出计算结果。
例如:
输入2+6,输出2+6=8。
#include
main()
{
floata,b,result;
charop;
scanf("%f%c%f",&a,&op,&b);
switch(op)
{
case'+':
result=a+b;printf("=%f",result);break;
case'-':
result=a-b;printf("=%f",result);break;
case'*':
result=a*b;printf("%f",result);break;
case'/':
if(b==0.0)printf("error!
\n");
result=a/b;
printf("=%f",result);
default:
printf("errorduetotheillegalinput!
\n");
}
}
第5章
三、编程题
1.编写程序,显示100~200之间能被7除余2的所有整数。
#include"stdio.h"
main()
{inti;
for(i=100;i<=200;i++)
{if(i%7==2)
printf("\t%d\t",i);
}
}
2.输入n个整数,求这n个整数中的最大数、最小数和偶数平均数,并输出。
#include
voidmain()
{
inti,n,data,max=0,min=0,even=0,evennumber=0;
printf("Pleaseinputthenumberofdata:
");
scanf("%d",&n);
printf("Pleaseinputthedata:
\n");
scanf("%d",&data);
max=data;
min=data;
if(data%2==0)
{
even=even+data;
evennumber++;
}
for(i=1;i { scanf("%d",&data); if(data>max) max=data; else if(data min=data; if(data%2==0) { even=even+data; evennumber++; } } printf("Themaxis%d\nTheminis%d\nTheaverageofevenis%5.2f\n",max,min,(float)(even)/evennumber); } 3.输入一串字符,以回车作为结束标志。 统计并输出这串字符中大写字母、小写字母和数字字符的个数。 #include voidmain() { intupper=0,lower=0,number=0; charletter; while((letter=getchar())! ='\n') { if(letter>='a'&&letter<='z')lower++; elseif(letter>='A'&&letter<='Z')upper++; elseif(letter>='0'&&letter<='9')number++; } printf("thenumberofuppercaseis: %d\n",upper); printf("thenumberoflowercaseis: %d\n",lower); printf("thenumberofnumberis: %d\n",number); } 4.输出九九乘法表。 #include voidmain() { inti,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) printf("%d*%d=%-3d",i,j,i*j); printf("\n"); } } 5.编写程序,输出3~1000之间全部素数。 #include #include"math.h" voidmain() { intk,data,tag; for(data=3;data<=1000;data++)//外层循环,用来产生2~1000之间的整数 { tag=0;//tag用于表示数i是否是素数,没有判断前先假定是素数 for(k=2;k<=sqrt(data)&&! tag;k++)//内层循环用来判断data是否有约数 { if(data%k==0) tag=1; } if(tag==1)printf("%4d",data);//如果i是素数,则输出 } } 6.输入一个三位数,判断其是否是“水仙花数”。 水仙花数是指3位数中的各位数字的立方和等于这3位数本身。 如153=1*1*1+5*5*5+3*3*3。 #include"stdio.h" voidmain() { intS,a,b,c; printf("请输入一个3位数: "); scanf("%d",&S); a=S/100;b=S%100/10;c=S%10; if(a*a*a+b*b*b+c*c*c==S) printf("%d是水仙花数。 ",S); else printf("%d不是水仙花数。 \n",S); } 7.编程求Fibonacci数列的前40个数。 该数列的生成方法是: F1=1,F2=1,Fn=Fn-1+Fn-2(n>=3)(即从第三个数起,每个数等于前2个数之和)。 #include"stdio.h" voidmain() { intf[40],n; f[0]=1; f[1]=1; printf("Fibonacci数列的前40个数是: %d\t%d\t",f[0],f[1]); for(n=2;n<40;n++) { f[n]=f[n-1]+f[n-2]; printf("%d\t",f[n]); } } 8.一个穷人找到一个百万富翁,给他商讨一个换钱计划如下: 我每天给你十万元,而你第一天只需给我一元钱,第二天给我二元钱,第三天给我四元钱,……,即我每天都给你十万元,你每天给我的钱都是前一天的两倍,直到满一个月(30天)。 百万富翁很高兴地接受了这个换钱计划。 请编写程序计算满一个月时,穷人给了富翁多少钱,而富翁又给了穷人多少钱。 #include voidmain() { longpoor=100000,rich=1,i; for(i=2;i<=30;i++) { poor=poor+100000; rich=rich*2; } printf("Moneyofpoorgivingrichis%ld\nMoneyofrichgivingpooris%ld\n",poor,rich); } 9.猴子吃桃问题。 猴子第一天摘下若干桃子,立即吃了一半,不过瘾又多吃了一个。 第二天早上又将剩下的桃子吃了一半,又多吃了一个。 以后的每天早上都是吃了前一天剩下的一半加一个。 到第10天早上时只剩下一个桃子了。 编写程序,求猴子第一天共摘了多少桃子。 /************************************************************************/ /*有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个*/ /*到了第10天就只余下一个桃子。 (C语言实现)*/ /*用多种方法实现求出原来这群猴子共摘了多少个桃子。 */ /************************************************************************/ /*运行环境: VC++6.0*/ /************************************************************************/ #include"stdio.h" main() { inti,j,k;/*j是最后的桃子数,k是中间变量,也是桃子总数*/ j=1; for(i=9;i>0;i--) { k=(j+1)*2; j=k; } printf("%total=%d\n",k); } 第6章 三.1.#include #definen10 voidmain() {inta[n],i,count1=0,count2=0,sum=0;floatave;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课后 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)