




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1 章习题答案 二、单项选择题 1.A 2.A 3. C 4.B 5.A 6.B 7.B 8. A 三、填空题 1. .C .CPP .OBJ .EXE 2. 主 3. #include, using namespace std, #include 4. 顺序结构,选择结构,循环结构 5, , 函数说明, 函数执行,不能省略,void 第2章习题答案 一、单项选择题 1.B 2.B 3.A 4.C 5. C 6. A 7.B 8.C 9. D 10. D 11. B 12.A 13. B 14.C 15. D 二、填空题 1. x20&X30|Xy或ab 3. 1 4. auto、register、static和extern 5. 函数体内 .6. int float double 7. 2 1 8. . 是最右边表达式的值 9. 7 10. 先使用后自增,先自增后使用 11右结合 12变量的数据类型、变量的存储类型、变量名 13是否整除 14此之外全局变量,静态局部变量 15count 三、写出程序运行结果 1、 2,1 2、 6,8,6,7 3、 n=1 4、 1 5、 n=-4 6、 x=3,a=2,b=3 7、 0 8、 i=6,d=12 9、 2147483647,-21473648 10、 x=3,y=5 第3章习题答案 一、单项选择题 1.D 2.B 3.B 4.C 5.D 6.D 7.B 8.B 9.C 10.A 二、写出程序运行结果 1. 120 2. s=63 3. 0 1 2 3 4 the loop break out. 4. freight= 5880000 5. sum=1 sum=3 sum=9 sum=33 三、程序填空 1. i+ i=10 2. i100 i%3!=0 3. x!=-1 xmin 4. i+,2*i-1 n 5. i=1 j0&ch19) printf(这是一个阿拉伯数字,朋友再见!n); else printf(这不是一个阿拉伯数字,朋友再见!n); 2. main() int x,y; scanf(%d,&x); if(x=10) y=3*x-11; else y=2*x-1; printf(nx=%d,y=%dn,x,y); 3. main( ) char grade; grade=getchar(); switch(grade) case A: printf(=90); break; case B: printf(8089); break; case C: printf(7079);break; case D: printf(6069); break; case E: printf(059); 4. void main() char ch1; ch1=getchar(); if(ch1a&ch1A&ch1Z) printf(这是一个英文小写字符,朋友再见!n); 5. void main() int n,a,b,c; for(n=100;nb) t=a;a=b;b=t; if(ac) t=a;a=c;c=t; if(ad) t=a;a=d;d=t; if(bc) t=b;b=c;c=t; if(bd) t=b;b=d;d=t; if(cd) t=c;c=d;d=t; printf(%d,%d,%d,%d,a,b,c,d); 7. #include main() float e=1.0,t=1,n=1; while(fabs(1/t)1e-6) e=e+1/t;n=n+1;t=t*n; printf(e=%fn,e); 8. main() int i,j; for(i=1;i=4;i+) for(j=1;j=i+30;j+)printf( ); /定打印*的位置,打在屏幕中央,从第31列开始 printf(*); for(j=1;j=2*(4-i);j+)printf( ); /两个*间的空位数 printf(*); printf(n); 9. main() int i,a,b,c,n=0; for(i=100;i=999;i+) a=i%100; c=i%10; b=i-a*100-c; if(i%11=0&(a=b|b=c|c=a) printf(%d ,i); n+=1; 10. main() int d=0,a=2; float m,s=0; do a=2*a; m=0.8*a; s=s+m; d+; while(a=100); printf(%fn,s/d); 第4习题答案一、ADABADBBB。C 二、3 18 a10 98 6 ABCDE 12 23 三、 19 825 10010 6521 -9是第6个元素 四、 &ai min=ai bi!=0 ai i+ si!=0 sj=si sj 第5章习题答案 一、选择题 1C 2。B 3.。A 4。 A 5。.B 6C 7。C 8。D 9。D 10。A 二、填空题 1. main 2. 单向地址传递 3 2 4. 静态局部 5. 整个函数 61 7不同数据类型或参数个数不同 8全局变量 9小 10int 三、运行结果 115 2根据输入的数据输出最大数。 3 30 25 48 17 51 3 6 四、程序填空 1. &xi+ 2. x 3. k strlen(str)-1 (或sizeof(str)-2) 4. fac/i 5. ai=bi 五、编程题 1. #include int max(int x,int y,int z) int t; if(xy) t=x; else t=y; if(tz) return z ; else return t; main() int a,b,c; scanf(%d,%d,%d,&a,&b,&c); printf(the max is :%dn,max(a,b,c); 2. #include double tri_area(float a,float b,float c) /*求三角形的面积*/ double s; s=(a+b+c)/2; return(sqrt(s*(s-a)*(s-b)*(s-c); main() float a,b,c,area; printf(please input the sides of a triangle: ); scanf(%f%f%f,&a,&b,&c); area=tri_area(a,b,c); printf(the area is:%6.2f,area); 3. #include #include count int x; ascll_max() int i; char max,ax;/设10个字符 for (i=0;ix;i+) scanf(%c,&ai); for(i=0;imax) max=ai; printf(%c,max); main() ascll_max(); 4.对10个数排序(选择排序)#includevoid sort(int array,int n) int i,j,k,temp; for (i=0;in-1;i+) k=i; for(j=i+1;jarrayk) k=j; temp=arrayk;arrayk=arrayi;arrayi=temp; void main() int a10,i; printf(input the array:n); for(i=0;i10;i+) scanf(%d,&ai); sort(a,10); printf(the sorted array:n); for(i=0;i10;i+) printf(%3d,ai); printf(n);5.#includevoid fun(int a) if(a%4=0&a%100!=0)|a%400=0) printf(闰年n);void main() int year; scanf(%d,&year); fun(year);6# includevoid nochar(int n) if(n/10!=0) nochar(n/10); printf(%c ,n%10+0);void main() int k; printf(input k:n); scanf(%d,&k); nochar(k); printf(n);7,#includevoid between(int m,int n) int k; if(n200) printf(wrongn);else m=m100?m:100; n=n200?200:n; for(k=m;k=n;k+) if(k%2=0) printf(%d ,k); printf(n); void main()int a,b;printf(input range a-b:n);scanf(%d,%d,&a,&b);between(a,b);8. #include #include #include float f() int s=1; float i,n=1,d=0,m; scanf(%f,&n); for(i=1;in+1;i+) m=s/i; d=d+m; s=-s; return d; main() float s; s=f(); printf(“%fn”,s); 9. #includevoid fun(int b,int n,int m) int i,c100;for(i=0;bin;i+)ci=bi;ci=n; for(;im;i+) ci+1=bi; for(i=0;im;i+) printf(%d ,ci); printf(n); void main() int i,a10,m,n; printf(请输入要输入的数字个数:); scanf(%d,&m); printf(请输入要输入的数字:); for(i=0;im;i+) scanf(%d,&ai); printf(请输入要插入的数字:);scanf(%d,&n); printf(插入数字后的排序: ); fun(a,n,m); 10. . #include int f(int n) int i; if(n=1) return 1; else if(n=2) return 1; else if(n2) return f(n-1)+2*f(n-2); main() int n; scanf(“%d”,&n); printf(f(%d)=%dn,n,f(n); 第6章习题答案一、D B D D B A B D D C二、10 fi2 9876 8764,10三、 60 2 ch=f s=24 3,5,5,3四、(si=48&si=59) 0 ap=ai;p=i 五。第六章 编程题1编写函数,将一维数组由大到小排序。#include #define N 10void sort(int *p,int n)int i,j,k,temp; for(i=0;in-1;i+) /用选择法进行排序k=i;for(j=i+1;jn;j+) if(*(p+j)*(p+k) k=j;/记录较小数位置temp=*(p+k);*(p+k)=*(p+i);*(p+i)=temp;main() int aN,i; printf(input %d int :n,N); for(i=0;iN;i+) scanf(%d,&ai); sort(a,N); printf(the sorted array:n); for(i=0;iN;i+) printf(%d , ai); return 0;22.编写input函数完成输入一个一维实型数组;函数find函数完成:输出其中的最大值,最小值和平均值。 #include #define N 5void input(float *p,int n); /函数声明void find(float *p,int n); /函数声明int main()float aN,*p = a; /把数组的首地址赋给pinput(p,N); /执行输入函数find(p,N); /执行求最值,平均值函数return 0;void input(float *p,int n) /函数定义int i;printf(请输入%d个实数:,N);for(i=0;iN;i+)scanf(%f,p+i);void find(float *p,int n)int i;float max = *p; /把数组的第一个元素值赋给max,以便同数组其他元素比较float min = *p; /把数组的第一个元素值赋给minfloat sum = 0;float avr;for(i=0;imax) max = *(p+i); if(*(p+i)min) min = *(p+i);avr = sum/n; /求平均值 printf(最大值为:%fn,max); printf(最小值为:%fn,min);printf(平均值为:%fn,avr);3若有*p=“1234567890”,然后反复从键盘上输入字符串(循环结构),若输入的字符串大于指针p指向的这个串,则输出“larger!”;如果小于指针p指向的这个串,则输出“smaller!”,直到你输入“1234567890”时程序结束。#include #include int main()char *p = 1234567890;char *q = new char100;while(1)printf(请输入:n);scanf(%s,q);if(strcmp(q,p)0) /如果q大于pprintf(larger!n);else if(strcmp(q,p)0) /如果q小于p printf(smaller!n); elseprintf(完成输入!n);break;return 0; 6输入一个字符串存入一维数组中,编写函数,统计字符串的长度。提示:定义语句为char str100,*pt=s;int n=0; #include int lenstr(char str); /函数声明int main()char str100; /定义一个含100个元素的字符数组int len;printf(请输入一个字符串:n);scanf(%s,str); /执行测长度函数len = lenstr(str);printf(字符串的长度是:%dn,len);/输出字符串的长度return 0;int lenstr(char str) /函数定义char *p; /字符指针int n =0;for(p=str;*p!=0;p+) /从第一个字符开始遍历字符串,测长度n+;return n;7.编写函数,指定一个具体月份,则输出该月份的相应英文月份名。例如,输入6,则输出June。 #include #include void main() char *p,str126=Jan,Feb,March,Apr,May,June,July,Aug,Sep,Oct,Nov,Dec/定义字符指针数组 ;int month;printf(请输入月份:n);scanf(%d,&month);p=strmonth-1;if(month0)printf(The Month is:%sn,p);/判断输入的月数是否大于十二elseprintf(Error!n);8主函数中定义3个字符类型指针,其中,两个字符指针分别指向两个字符串,编写函数,将两个字符串连接后存入第3个字符指针指向的字符串中。假设*pt1=”begin”;*pt2=”_end”;连接后:*pt3= begin_edd”。 提示:同时移动字符指针,连接串1直到:while(*pt1!=0) ,给新字符串赋值:*pt3=*pt1;。第1字符串结束后,再连接第2字符串,输出:printf(“%s”,pt3)。 #include #include char *cat(char *p,char *q);int main() char *p1 = begin;char *p2 = _edd;char *p3 = new charstrlen(p1)+strlen(p2)+1;p3 = cat(p1,p2);printf(%s,p3);return 0;char *cat(char *p,char *q)char *c = new char13;int i = 1;while(*p !=0) /将第一个字符串赋给c*c = *p;p+;c+;i+;while(*q!=0)/将第二个字符串赋给c*c = *q;c+;q+;i+;*c = 0;for(int n=1;nn0=10013451五。#include #include struct date /结构体定义int year; int month; int day;a;main()int sum; scanf(%d,%d,%d,&a.year,&a.month,&a.day); switch (a.month)case 1:sum=0;break;case 2:sum=31;break;case 3:sum=59;break;case 4:sum=90;break;case 5:sum=120;break;case 6:sum=151;break;case 7:sum=181;break;case 8:sum=212;break;case 9:sum=243;break;case 10:sum=273;break;case 11:sum=304;break;case 12:sum
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 听力筛查考试题及答案
- 天天学农各章节测试考试题及答案
- 2025年公营养师之三级营养师题库附答案
- 2025年高级钳工题库+答案
- 2025年高级技师钳工试题及答案
- 2025年高级焊工职业技能考试练习题附答案
- 物竞预赛试题及答案
- 营销经营与管理办法
- 纸张使用及管理办法
- gmp认证与管理办法
- 《机械制图(多学时)》中职全套教学课件
- 新教科版小学1-6年级科学需做实验目录
- 斜拉桥主桥索塔施工监理实施细则
- 输电线路运行运维巡视施工组织设计方案
- 2022年全国数学建模竞赛D题的答案
- 部编教材九年级历史(上)全册教案
- 劳动关系理论PPT课件.ppt
- 高速铁路供电安全检测监测系统(6C系统)总体技术规范
- 医院输血科技术人员绩效考核指标
- 酒店管理有限公司薪酬体系
- 冲击式水轮机演示
评论
0/150
提交评论