




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
285附录F 课后题参考答案附录F 课后题参考答案习 题 11.1 填空题1函数2主函数main();主函数main()3主函数main()4函数首部;函数体5;6顺序结构;选择结构;循环结构7.c;.obj;.exe1.2 思考题1答:结构化程序设计是指,为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。顺序结构,选择结构,循环结构2答:算法是对具体问题求解步骤的一种描述。计算机算法的表达工具通常采用以下几种方法:用自然语言表示算法;用流程图表示算法;用伪代码表示算法;用程序设计语言表示算法。3略4略5略1.3 编程题1答:#include stdio.hmain() float a=10, b=20, h=5, s; s=(a+b)*h/2; printf(s=%f , s );2答:#include stdio.hmain() printf(*); printf(* hello world *); printf(*);习 题 22.1 单选题DBDCA DCABB CA2.2 填空题12.00000021;0.50000039;2465100;d6(1)20 (2)0 (3)607(1)10;6;4 (2)6;9;15 (3)3;60;83855或 79x=4;y=6;z=3;m=4632.3 改错题(略)习 题 33.1 单选题BDABC ADCAC BBA3.2 填空 1;互换a,b的值56.660037785.0,4,c=39i=10,j=2010 (1)65 (2)65,A (3)3.14,123.46 (4)3.141600e+000,1.234560e+002 (5)8765.432100 (6)8.765432e+00311a=2b=5x=8.8y=76.34c1=65c2=9712%d/%d;%d/%d=%.2fn3.3 改错题(略)3.4 编程题1答:#include stdio.hmain() int x,y; scanf(%d%d,&x,&y); printf(ttxtyn); printf(十进制数t%dt%dn,x,y); printf(八进制数t%ot%on,x,y); printf(十六进制数t%Xt%xn,x,y);2答:#include stdio.hmain() char ch; printf(请输入一个大写英文字母); scanf(%c,&ch); printf(大写英文字母是%cn,ch); printf(它的前导字符是%cn,ch-1); printf(它的后续字符是%cn,ch+1);3答:#include stdio.h main() int x,a,b,c,y; printf(请输入一个三位整数n); scanf(%d,&x); a=x/100; b=(x-a*100)/10; c=x%10; y=c*100+b*10+a; printf(反向输出该整数:%dn,y); 4答:#include stdio.hmain() int hour; double salary, salaryday; scanf(%d,%lf, &hour, &salaryday ); salary=hour*salaryday- hour*salaryday*0.1; printf(%8.2lfn, salary);5答:#include stdio.hmain() int a,b,c,t; printf(请输入三个整数n); scanf(%d%d%d,&a,&b,&c); printf(交换前a=%d,b=%d,c=%dn,a,b,c); t=a;a=c;c=b;b=t; printf(交换后a=%d,b=%d,c=%dn,a,b,c);习 题 44.1 单选题BADDD ACBBB BA4.2 填空题112(1)a0 | b0 (2)x0 & x=10 (3)a=1.5 & b=1.5 & c=1.5 (4)pa | pb | p=3|college=y| college=Y)&agec&a+cb&b+ca) p=(a+b+c)/2; area=sqrt(p*(p-a)*(p-b)*(p-c); printf(三角形的面积为%.2lfn,area); else printf(不能构成三角形n);2答:#include stdio.hmain() int x,y; scanf(%d,%d,&x,&y); if(x*x+y*y1000) printf(%dn,(x*x+y*y)/100); else printf(%dn,x+y);3答:#include stdio.h#include math.hmain() double x,y; scanf(%lf,&x); if(x-2) y=x*x-sin(x); else if (x3000) d=0.15 else if( s=2000) d=0.1; else if(s=1000) d=0.08; else if(s=500) d=0.05; else if(s=250) d=0.02; else d=0 f=p*w*s*(1-d); printf(%f,f);6答:#include stdio.hmain() int year,money; char x; printf(是否是本公司产品(y/n):); scanf(%c,&x); if(x=y|x=Y) printf(产品使用的年限:); scanf(%d,&year); if(year=1) money=0; else if(year2000) printf(请输入取款额数2000!n); else if(money%50=0) num1=money/100; num2=(money-num1*100)/50; printf(需支付100元:%d张n,num1); printf(需支付50元:%d张n,num2); else printf(输入钱数必须是50的倍数!n);习 题 55.1 单选题CDABA ABDDB DBCB5.2 填空题12 02333 3(1)i10 或 i=9 (2)j%3!=04(1)flag*(float)k/(k+1) 或1.0*flag*k/(k+1) (2)flag=-flag5(1)max=x (2)x!=-1 (3)scanf(%d, &x)6(1)x=9或x10 (2)y=9-x5.3 改错题(略)5.4 编程题1答:(1)for循环,其他略#include stdio.hmain() int i,s=0; for(i=1;i1e-6); printf(%lf,s);2答:#include stdio.hmain() int m,n,t,a,b; scanf(%d,%d,&m,&n); if (m0 ;y-)s*=x ; printf(%d,%d,%dn ,s%10,s/10%10,s/100%10);4答:#include stdio.hmain() int x,y,z; for( x=1 ; x20 ;x+) for( y=1 ;y33 ;y+) z=100-x-y ; if (z%3)=0 &(5*x+3*y+z/3)=100) printf(x=%d,y=%d,z=%dn,x,y,z) ; 5答:(a)#include stdio.hmain() int j,k ; for( j=1 ;j=4 ;j+) for(k=1;k=4-j;k+)printf( ); printf(*) ; printf(n) ; (b)#include stdio.hmain() int j,k; for( j=1;j=4;j+) for(k=1;k=4-j;k+)printf( ); for(k=1;k=2*j-1;k+) printf(*); printf(n); 6答:程序分析:利用for循环控制在100999之间,对每个数分解出个位、十位、百位。#include main()int i,j,k,n;printf(water flowernumber is:);for(n=100;n1000;n+) i=n/100;/*分解出百位*/ j=n/10%10;/*分解出十位*/ k=n%10;/*分解出个位*/ if(n=i*i*i+j*j*j+k*k*k) printf(%-5d,n); printf(n);7答:#include main()int x;for(x=1000;x=3;x-)if(x%3=1&x%5=2&x%7=3) printf(该校的学生人数是:%d人n,x); break; 8答:#include main() int x=12,i=1; while(1) if(x+20+i)=2*(x+i) break; i+; printf(小明母亲在%d年后比小明的年龄大一倍n,i); printf(那时小明年龄是:%d岁,小明母亲年龄是:%d岁n,x+i,x+20+i);习 题 66.1 单选题DBCCB BDC6.2 填空题1c26031000 10416 6.3 编程题1答:#include stdio.h#include math.h#define F(a) a*a+ sqrt(3*a*a+2*a+1)main() float x, f; scanf(%f, &x ); f=4.5/F(exp(x)+F(cos(x)+F(sqrt(x)/F(x*x) ; printf(%fn, f);习 题 77.1 单选题BCADA CCCDA BCBDB7.2 填空题1(1)2 3 4 5 (2)10010 (3)QuickC (4)10000 01000 00100 00010 00001 (5)Language(6)Language Programming2(1)j+=2 (2)aiaj3(1)i=1 (2)xi-17.3 改错题(略)7.4 编程题1答:#define N 10 #include stdio.hmain() int aN=1,2,3,4,5,6,7,8,9,10,osum=0, qsum=0,j; for(j=0;j10;j+) if( j%2) qsum+=aj; else osum+=aj; printf(osum=%d,qsum=%dn, osum,qsum);2答:#define N 10#include stdio.h main() int aN=10,20,30,40,50,60,70,80,90, j, k, x; scanf(%d,&x); for(j=0;jN;j+) if (xj; k-) ak=ak-1;aj=x; for(j=0;jN;j+) printf(%d ,aj);3答:#define M 3#include stdio.hmain() int aMM=1,2,3,2,4,5,3,5,6,j,k,flag=1; for( j=0;jM;j+) for(k=0;kc2j) printf(%dn,1); if (c1jc2j) printf(%dn,-1); if (c1j=c2j) printf(%dn,0);5答:#include stdio.h#include string.h#define M 3#define N 80main() char aMN,j,k,n5=0; for(j=0;jM;j+) gets(aj); for(j=0;j=A & ajk=a & ajk=0 & ajk=9) n2+; else if (ajk= ) n3+; else n4+; for(j=0;j* p2) t=*p1;*p1=*p2;*p2=t; if(*p1*p3) t=*p1;*p1=*p3;*p3=t; if(*p2*p3) t=*p2;*p2=*p3;*p3=t; printf(the sorted numbers are:%d,%d,%dn,n1,n2,n3);2答:#include stdio.h#define N 3main() int aN,*p=a; for(;p-a=0; p-) printf(%d ,*p);3答:#include stdio.hmain() int a10; int j,minl=0,maxl=0; for(j=0;j10;j+) scanf(%d, a+j); for(j=0;j10;j+) if(amaxl*(a+j) minl=j; j=a0; a0=aminl;aminl=j; j=a9;a9=amaxl;amaxl=j; for(j=0;j10;j+) printf(%d , *(a+j);4答: 输入阵列如下: 1 2 3 4 5 6 7 8 9 10 11 12 输出阵列如下: 12 11 10 9 8 7 6 5 4 3 2 1#define M 3#define N 4#include stdio.hmain() int aMN=1,2,3,4,5,6,7,8,9,10,11,12,k,j,*p=&a00,t; for(k=0,j=M*N-1;kj;k+,j-) t=*(p+k); *(p+k)=*(p+j); *(p+j)=t; for (k=0;kM;k+) for(j=0;jN;j+) printf(%4d ,akj); printf(n); 5答:#include stdio.hmain() int len; char str20,*p=str; printf(please input a string:n); scanf(%s,str); len=0; while(*p!=0) len+; p+; printf(the string has %d characters.n,len);6答:#include string.h#include stdio.hmain() char *str15,ch520,k,t,j,*c; void sort(char *); for(k=0;k5;k+) str1k=chk; gets(str1k); for(k=0;k7;k+) t=k; for(j=k+1;j0) t=j; c=*(str1+t); *(str1+t)=*(str1+k) ; *(str1+k)=c ; for(k=0;k=a & ch=z) ch=ch-32; putchar(ch); 2答:double expp(int n) int k, fac=1; double sum=1; for(k=1; k=n; k+) fac*=k; sum+=1.0/fac ; return(sum);3答:int xy3( int x, int y) int k, num=1; for(k=1;k=y ; k+) num*=x ; num=num%1000 ; return num ;4答:int age( int n) int c; if(n=1) c=10 ; else c=age(n-1)+2 ; return c ;5答:#include stdio.h main() int a,b,c,d; void fun(int a,int b,int *c, int *d); scanf(%d%d,&a,&b); fun(a,b,&c,&d); printf(%d %d,c,d);void fun(int a,int b,int *c, int *d) if (b) *c=a/b; *d=a%b;6答:#include stdio.hmain(int argc,char *argv) int k; printf(argc=%dn,argc); for (k=1;kargc; k+) printf(%sn,argvk);习 题 1010.1 单选题CDBBB BBBAD CCBDC 10.2 填空题1所有结构体成员所占存储空间的总和2与占用存储空间最大的那个成员相等3(1)struct satype (2)3 (3)sa.a (4)9 (5)psa=&sa4805struct node6010.3 编程题1答:#include stdio.hstruct student long num; char name20; cha
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 锦州年会活动方案策划
- 策划文娱减压活动方案
- 创意衣架设计课件
- 创意产品设计手表
- 初中地理教学设计
- 关节僵硬康复指南图解
- 四季教学课件教案
- 盆栽基础知识培训内容
- 护理学基础:疼痛管理
- 标志设计项目式教程课件 项目九 医疗标志分类
- 月嫂培训高级班
- 中式烹调师高级技师考试模拟题与参考答案
- 园林绿化工(技师) 技能鉴定理论考试题及答案
- 神经病学-第十章-脑血管病的介入诊疗
- 初中生物人教版教材解读
- 无接触式戴无菌手套操作规程及评分细则
- 丧葬服务行业的行业伦理与规范
- 设计服务质量承诺及保证措施
- 旅游自愿离团免责协议书
- DZ∕T 0270-2014 地下水监测井建设规范
- T-CACM 1217-2019 中医肿瘤科临床诊疗指南 胰腺癌
评论
0/150
提交评论