C语言程序设计(何钦铭-)课后习题作业.doc

上传人:一*** 文档编号:808869 上传时间:2019-07-16 格式:DOC 页数:27 大小:104KB
返回 下载 相关 举报
C语言程序设计(何钦铭-)课后习题作业.doc_第1页
第1页 / 共27页
C语言程序设计(何钦铭-)课后习题作业.doc_第2页
第2页 / 共27页
点击查看更多>>
资源描述

《C语言程序设计(何钦铭-)课后习题作业.doc》由会员分享,可在线阅读,更多相关《C语言程序设计(何钦铭-)课后习题作业.doc(27页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第一章习题第一章习题1、对 C 语言来说,下列标示符中哪些是合法的,哪些是不合法的?Total, _debug, LargeTall, Counter1, begin_答:合法的:_debug、Counter1、begin_。不合法的:Total、LargeTall。 2、改写 1.4 节中的流程图 1.2,求 1100 中能被 6 整除的所有整数的和。Sum=0,i=1I int main(void) int i,sum=0; for(i=1;i1) ,请设计一个流程图判别 n 是否为一个素数(只能被 1 和自己 整除的整数) ,并分析该流程图中哪些是顺序结构、哪些是分支结构和循环结构。开始

2、结束输入 ni=2r=n/i 的余数r=0?i=i+1i=(n-1)输出 n “是素数”输出 n “不是素数”假真真假开始结束输入 ni=2r=n/i 的余数r=0?i=i+1i=(n-1)输出 n “是素数”输出 n “不是素数”假真真假第二章作业第二章作业1编写程序,输入两个整数编写程序,输入两个整数 num 和和 num2,计算并输出她们的和、差、积、商。,计算并输出她们的和、差、积、商。 答:程序:答:程序: #includevoid main() int num1,num2,y1,y2,y3,y5; double y4; printf(“请输入两个数:num1,num2n“); sc

3、anf(“%d%d“, y1=num1+num2; y2=num1-num2; y3=num1*num2; y4=num1*1.0/num2; y5=num1%num2; printf(“num1,num2 和 y1=%dnnum1,num2 差 y2=%dnnum1,num2 积 y3=%dnnum1,num2 商 y4=%lfnnum1,num2 余 y5=%dn“,y1,y2,y3,y4,y5); 2为了倡导居民节约用电,某省电力公司执行为了倡导居民节约用电,某省电力公司执行“阶梯电价阶梯电价” ,安装一户一表的居民用户电,安装一户一表的居民用户电 价分为两个价分为两个“阶梯阶梯”:月用

4、电量:月用电量 50 千瓦时以内的,电价为千瓦时以内的,电价为 0.53 元元/千瓦时;超出千瓦时;超出 50 千瓦时千瓦时 的用电量,电价上调的用电量,电价上调 0.05 元元/千瓦时。编写程序,输入用户的月用电量(千瓦时)千瓦时。编写程序,输入用户的月用电量(千瓦时) ,计算并,计算并 输出该用户应支付的电费(元)输出该用户应支付的电费(元) 。 答:程序:答:程序:#includevoid main() double x,y; printf(“请输入月用电量:xn“); scanf(“%lf“, if(xvoid main() double x,power;int i,n; printf

5、(“请输入:x,nn“); scanf(“%lf%d“, power=1.0; for(i=1;i void main() int i,m,n; double sum; sum=0; printf(“input:m,nn“); scanf(“%d%d“, for(i=m;i void main() int i,n; double sum,item,flag; flag=1;sum=0; printf(“input:nn“); scanf(“%d“, for(i=1;i #include void main() int lower,upper,month,year,loan; double mo

6、ney,rate; lower=5;upper=30; printf(“请输入贷款本金:loann“); scanf(“%d“, printf(“请输入月利率:raten“); scanf(“%lf“, printf(“还款年限t 月还款额n“); for(year=lower;year #include void main() int i,n; double sum,item; sum=0; printf(“input:nn“); scanf(“%d“, for(i=0;i double fact(int n); void main() int i,n; double sum; sum=0;

7、 printf(“input:nn“); scanf(“%d“, for(i=0;i #include void main() int a,b,c; double s,area,perimeter; printf(“请输入三角形三条边:a,b,cn“); scanf(“%d%d%d“, if(a+bc s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c); printf(“三角形的周长 perimeter=%.2lfn 三角形的面积 area=%.2lfn“,perimeter,area); 2、 #include #include void main() d

8、ouble salary,tax,rate; printf(“请输入职工的月薪:salaryn“); scanf(“%lf“, if(salary void main() double m,n,y; printf(“请输入行驶里程(公里):mn 等待时间(分钟):nn“); scanf(“%lf%lf“, if(m+n/5.0) void main() int i,n,A,B,C,D,E; double score,total; printf(“请输入一个数 n:n“); scanf(“%d“, total=0;A=0;B=0;C=0;D=0;E=0; for(i=1;i=90) A+; el

9、se if(score=80) B+; else if(score=70) C+; else if(score=60) D+; else E+; printf(“平均成绩=%lfn“,total/n); printf(“等级成绩个数:nA=%dnB=%dnC=%dnD=%dnE=%dn“,A,B,C,D,E); 5、 #include void main() int year; printf(“21 世纪所有的闰年:n“); for(year=2000;year=0.00001) s=pow(x,i)*1.0/fact(i)+s; i+; printf(“s=%.2lfn“,s); doubl

10、e fact(int n) int i; double result; result=1; for(i=1;i0;j=j/10) n=k/j; printf(“%d“,n%10); if(j!=1) printf(“,“); 11、 #include“stdio.h“ void main() int p,r,n,m,temp; printf(“请输入两个正整数:n“); scanf(“%d%d“, if(n #include long fac(int n,int a) long sum; if(n=1) sum=a; elsesum=(long)(pow(10,n-1)*a)+fac(n-1,

11、a); return(sum); main() int a,n,i; long temp,sum=0; printf(“请输入一个数 a,nn“); scanf(“%d%d“, for(i=1;i int countdight(int number,int dight); int main(void) int number; printf(“输入一个数:“); scanf(“%d“, countdight(number,2); return 0; countdight(int number,int dight) int a,count; count=0; while(number!=0) a=

12、number%10; number=number/10; if(a=dight) count+; printf(“%dn“,count); return count; 3. #include int fib(int n); int main(void) int m,n,num1; num1=1; printf(“请输入两个正整数 m 和 n(m=1,n=m int main(void) int n,m,num1; num1=1; printf(“输入两个数 m 和 n(m=1,n=m int main(void) int x; printf(“请输入一个正整数:n“); scanf(“%d“,

13、 reverse(x); return 0; int reverse(int number) while(number!=0) printf(“%d“,number%10); number=number/10; printf(“n“); return number; 第七章作业第七章作业1. #include void main() int i,j=0,k=0,n,p,q,max,min; int a10; printf(“请输入 n(1max) max=ai; j=i; p=a9;a9=aj;aj=p; q=a0;a0=ak;ak=q;for(i=0;i int main(void) int

14、 m,n,i,j,sum; int a66,x80;printf(“请输入 m,n(1 void main() int a33,max,max1,max2,i,j,flag=1; printf(“请输入 9 个数: n“);for(i=0;imax) max=aij; max1=j; for(max2=0;max2amax1max2) flag=0; break; if(flag=1) printf(“鞍点是 %dn“,amax2max1); if(flag=0) printf(“no numbern“); flag=1; 8. #include #include int main(void)

15、 int i,n;char s80; printf(“请输入 n(n=A char f,s80;printf(“Enter a string: “); /*输入字符串*/i = 0; while(si = getchar( ) != n) i+; si = 0;n = 0; for(i = 0; si != 0; i+) if(si = 20) si=si+; else break; for(i = 0; si != 0; i+) putchar(si); return 0; 第八章作业第八章作业1. #include int main(void) char ch; int a10; int

16、i,j,temp;printf(“请输入 10 个整数:n“);for(i=0;iaj) temp=ai; ai=aj; aj=temp; for(i=0;i #include void mcopy(char *s,int m); int main(void) int i,m,l; char str100; printf(“请输入您要输入的字符串:“);gets(str);printf(“您将从原字符串的第 m 位复制新字符串,请输入 m:n“);scanf(“%d“, printf(“复制后,新的字符串为:“);mcopy(str,m); return 0; void mcopy(char

17、*s,int m) printf(“%sn“,s+m-1); 11. #include #include void fushu(char *p); int main(void) char str80; printf(“请输入一个英语名词单词:“);scanf(“%s“,str);fushu(str); puts(str);return 0; void fushu(char *p) int i,l; l=0; for(i=0;*(p+i)!=0;i+) l+; if(*(p+l-1)=y) *(p+l)=e; *(p+l+1)=s; *(p+l+2)=0; else if(*(p+l-1)=s)

18、|(*(p+l-1)=x)|(*(p+l-2)=c) *(p+l+1)=s; *(p+l+2)=0; else if(*(p+l-1)=o) *(p+l)=e; *(p+l+1)=s; *(p+l+2)=0; else *(p+l)=s; *(p+l+1)=0; 12. #include #include int main(void) int i,j,a,n,sum,avg; int *p;printf(“Enter n:“); scanf(“%d“, if(p=(int*)calloc(n,sizeof(int)=NULL) printf(“Not able to allocate memo

19、ry.n“); exit(1); printf(“请输入%d 个学生的成绩:n“,n);for(i=0;i*(p+j) a=*(p+i); *(p+i)=*(p+j); *(p+j)=a; printf(“学生的平均成绩是:%dn“,avg); printf(“学生的最高成绩是:%dn“,*(p+n-1); printf(“学生的最低成绩是:%dn“,*p);return 0; 第九章作业第九章作业1. #include struct int hour,minute,second; time; int main(void) scanf(“%d:%d:%d“,time.hour,time.min

20、ute,time.second); time.second+; if(time.second=60) time.minute+; time.second=0; if(time.minute=60) time.hour+; time.minute=0; if(time.hour=24) time.hour=0; printf(“%d:%d:%d“,time.hour,time.minute,time.second); return 0; 2. struct s1 char c1,c2; int n; ; struct s2 int n;struct s1 m; ; int main(void)

21、printf(“nt%dt%dt%cn“,m.n,m.m,m.n,m.m.c1,m.m.c2); return 0; 8. #include #define N 10 struct person char num10; char name20; double jbgz,jj,zc,sfgz; ; struct person gzN; int main() int i,index;printf(“请输入%d 名工人的基本信息:n“, N);for(i=0;igzindex.sfgz) index=i; printf(“实发工资最高的工人:n 姓名:%st 实发工资:%.2lfn“,gzindex

22、.name,gzindex.sfgz); return 0; 9. #include #define N 3 struct book char sm30; double dj; ; struct book xxN; int main() int i,max,min;printf(“请输入%d 本书的基本信息:n“, N);for(i=0;ixxmax.dj) max=i; printf(“定价最高的书:n“);printf(“t%st%.2lfn“,xxmax.sm,xxmax.dj); printf(“定价最低的书:n“);printf(“t%st%.2lfn“,xxmin.sm,xxmin

23、.dj);return 0; 第十章作业第十章作业1. #include“stdio.h“int main() int n; int fact(int n); printf(“请输入一个 3 位数:nn“); scanf(“%d“,n); printf(“%d“,fact(n); return 0; int fact(int n) int i,a,b,c,count=0; for(i=101;1 #include double fact(int n,double x); void main() int n; double result,x; printf(“请输入整数 n 及 x:“); sc

24、anf(“%d%lf“, result=fact(n,x); printf(“结果为:%.4fn“,result); double fact(int n,double x) if(n=1) return x; else return pow(-1,n-1)*pow(x,n)+fact(n-1,x); 3. # include “stdio.h“ int invert(long m) printf(“%ld“, m%10);m = m/10;if (m0)invert(m) ; main() long n;printf(“Enter n: “);scanf(“%ld“, invert(n);printf(“n“);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com