课后编程题部分答案PPT参考幻灯片_第1页
课后编程题部分答案PPT参考幻灯片_第2页
课后编程题部分答案PPT参考幻灯片_第3页
课后编程题部分答案PPT参考幻灯片_第4页
课后编程题部分答案PPT参考幻灯片_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课后编程题部分答案,第一章,(1)仿例1-2编写一C程序,输入2个数整数,输出它们的和、积。,#includemain()inta,b,s;floatt;scanf(%d%d,第一章,(2)编写程序打印输入如下形式的信息*YouAreGood!*,#includemain()printf(*n);printf(YouAreGood!n);printf(*n);,第二章,1.编一个程序,输入一个三位数据,在窗体打印输出其个位数,10位数和100数。,voidmain()intx,a,b,c;scanf(%d,第二章,2.编写程序,从键盘上输入两个无符号整数,求它们按位求与、或和异或的值,输出其结果。,voidmain()intx,y;scanf(%u%u,第二章,3.编写程序,从键盘输入梯形的上下底边长度和高,计算梯形的面积。,voidmain()inta,b,h;floats;scanf(%d%d%d,第三章,(1)编写程序,从键盘上输入两个电阻的值,求它们并联和串联的电阻值,输出结果保留两位小数。,voidmain()floatr1,r2,rs,rp;scanf(%f%f,第三章,(2)编一个华氏温度与摄氏温度之间的转换程序,转公式如下:摄氏温度转换为华氏温度,F为华氏度。,voidmain()floatc,f;scanf(%f,第三章,(3)编一个程序,从键盘输入学生的三门课成绩,求其总成绩及平均成绩。,#includestdio.hmain()floata1,a2,a3,ave;scanf(%f%f%f,第四章,输入一公元年号,判断是否是闰年。闰年的条件是:年号能被4整除但不能被100整除,或者能被400整除。,voidmain()inty;scanf(%d,第四章,(2)输入三个数据,如果这三个数据能够构成三角形,计算并输出三角形的面积。,#includevoidmain()floata,b,c,x,s;scanf(%f%f%f,第四章,(3)编制一个就算个人所得税的程序。,voidmain()floatsalary,tax;intntax;printf(nPleaseenterasalary=);scanf(%f,case3:case4:tax=500*0.05+(salary-1500)*0.1;break;case5:case6:tax=500*0.05+1000*0.1+(salary-2500)*0.15;break;case7:case8:case9:tax=500*0.05+1000*0.1+1000*0.15+(salary-3500)*0.20;break;case10:tax=500*0.05+1000*0.1+1000*0.15+1500*0.20+(salary-5000)*0.30;printf(nThetax=%10.2fn,tax);,第四章,#includemain()inti=1;floatt=-1,s=0;dot=-t/i;s=s+t;i=i+1;while(fabs(t)1e-6);printf(s=%fn,s);,第四章,(4)编程计算多项式的和,精度为0.000001。,voidmain()inti,a,b,c;for(i=100;i=999;i+)a=i/100;b=i/10%10;c=i%10;if(i=a*a*a+b*b*b+c*c*c)printf(%dn,i);,第四章,(5)编程显示所有的水仙花数。,main()inti,j;for(i=1;i=1;i-)for(j=1;j=6-i;j+)putchar();for(j=1;j=i*2-1;j+)printf(%c,65+i-1);printf(n);,第四章,(6)打印由数字组成的金字塔图案。,#includemain()inta,b,c;for(a=0;a=20;a+)for(b=0;b1e-6);printf(pi=%fn,pi);,第四章,(9)计算的近似值。,#includestdio.hmain()inti,j,sum;for(i=6;i=1000;i+)sum=0;for(j=1;j=i-1;j+)if(i%j=0)sum+=j;if(sum=i)printf(%d,i);,第四章,(10)打印输出61000之间的所有合数。,#includestdio.h#includemath.hmain()intx,y,z;for(x=-sqrt(2000);x=sqrt(2000);x+)for(y=-sqrt(2000);y=sqrt(2000);y+)for(z=-sqrt(2000);z=sqrt(2000);z+)if(x*x+y*y+z*z=2000)printf(x=%d,y=%d,z=%dn,x,y,z);,第四章,(11)编程求方程x2+y2+z2=2000的所有整数解。,main()inti,j,t,n,a11=0,1,2,3,4,5,6,7,8,9,10;for(i=0;i=0;j-)aj+1=aj;a0=t;for(i=0;i=10;i+)printf(%d,ai);,第五章,(2)编程将一维数组中的元素向右循环移位N次。,#includemain()inta100,b100,i,j,p,count=0,n=0,t;while(count=10,第五章,(3)使用随机函数random产生100个2位整数放入数组a,将其中的偶数放入数组b,然后运用选择法将数组b升序排列,输出。,for(i=0;in-1;i+)p=i;for(j=i+1;jn;j+)if(bjbp)p=j;t=bp;bp=bi;bi=t;for(i=0;in;i+)printf(%d,bi);if(i%10=9)printf(n);,第五章,#includemain()inta50,count=0,t,i,n=0;a0=random(99);while(countcount)a+count=t;for(i=0;i50;i+)printf(%2d,ai);if(i%10=9)printf(n);,第五章,(4)使用随机函数random产生50个0-100互不相等的整数,并以一行10个数据的形式输出。,voidmain()inti,j,sum,a104,max,p;for(i=0;imax)p=i;printf(No.%dTotalscore:%dn,p+1,ap3);,第五章,(6)输入10个学生的学号和三门课成绩,统计并输出三门课总分最高的学生的学号和总分。,#includevoidmain()charst15,str2015;inti,j,p;for(i=0;i20;i+)gets(stri);for(i=0;i20-1;i+)/*选择法排序*/p=i;for(j=i+1;j20;j+)if(strcmp(strj,strp)0)p=j;if(p!=i)strcpy(st,stri);strcpy(stri,strp);strcpy(strp,st);for(i=0;i20;i+)printf(%sn,stri);,第五章,(9)输入20个英文单词,存入到数组str2015中,将它们按升序打印出来。,#includemain()inta10,b10,t;intn=0,m=0,i,j,f;printf(InputArraya,endwith1:);scanf(%d,第五章,(10)输入两个数组,每个数组不超过10个元素。,for(i=0;in;i+)/*打印只在数组a中出现的元素*/f=1;for(j=0;jm;j+)if(ai=bj)f=0;break;if(f)printf(%d,ai);for(i=0;im;i+)/*打印只在数组b中出现的元素*/f=1;for(j=0;jn;j+)if(bi=aj)f=0;break;if(f)printf(%d,bi);,第五章,#includemain()charstr81;inti=-1;printf(Input:);scanf(%s,str);while(+i=A,第五章,(12)输入一行不超过80个字符串,输出所有出现过的大写英文字符。,#include#include#includevoidmain()chars80;inti=0;gets(s);while(si!=0)if(isdigit(si)strcpy(s+i,s+i+1);elsei+;puts(s);,第五章,(14)输入一行字符串,将其中所有的数字字符删除。,voidmain()charst80,ss20,sp20,*a=st,*b=ss,*t=sp;inti,n,m,p=-1;gets(a);gets(b);n=strlen(a);m=strlen(b);for(i=0;i=n-m+1;i+)a=st+i;strncpy(t,a,m);/*将字符指针a指向的字符串取前m个字符复制到t所指的字符串中*/if(strcmp(b,t)=0)p=i;break;if(p=-1)printf(%d,p);elseprintf(%d,p+1);/*因数组下标从0开始,所以输出p+1*/,第五章,(16)输入一行字符串,将其中所有的数字字符删除。,floatfe(intn,floatx)floate,t;inti;e=1;t=1;for(i=1;iap,第五章,(5)编写函数voidfun(int*a,intn,inty)。,intfun(ints,intn)inti,sum=0,count=0,aver;for(i=0;iaver)count+;returncount;voidmain()inta50;intx,p,i=0;doscanf(%d,第五章,(6)编写函数intfun(floats,intn)。,intgcd(intm,intn)if(m%n=0)returnn;elsereturngcd(n,m%n);voidmain()intx,y,t;if(xy)t=x;x=y;y=t;scanf(%d,%d,第五章,(7)编写递归函数计算两个整数的最大公约数。,#definePI3.14159#defineV(r)3.0/4*PI*r*r*rvoidmain()floatr1;scanf(%f,第六章,(1)编写一个计算球体积的带参数的宏。,#defineINPUTARRAY(a,n)for(i=0;in;i+)scanf(%d,第六章,(2)编写一个程序,用宏INPUTARRAY(a,n)输入数组元素,用宏SUMARRAY(a,n,sum)计算数组元素之和。最后在程序中打印。,voidmain()inta,b,c,*p1,*p2,*p3,*t;scanf(%d,%d,%d,第七章,(1)使用指针法,实现输入三个整数,按由小到大的顺序输出。,#defineSTUDENT4#defineCOURSE5floatave_stu(float(*p)COURSE,intn);/*计算第n个学生的平均成绩*/floatave_cou(float(*p)COURSE,intn);/*计算第n门课程的平均成绩*/floatave_tot(float*p,intn);/*计算n个分数的总平均成绩*/voidsearch(float(*p)COURSE,intn);/*输出有2门及以上课程不及格学生的成绩*/main()floatscoreSTUDENTCOURSE;inti,j;printf(nInputscores:n);for(i=0;iSTUDENT;i+)for(j=0;jCOURSE;j+)scanf(%f,第七章,(4)编写一个成绩管理程序来处理4个学生、5门课程的成绩。,for(i=0;iSTUDENT;i+)printf(%3d,i+1);for(j=0;jCOURSE;j+)printf(%4.1f,scoreij);printf(n);printf(nAveragescoreofstudent:n);for(i=0;iSTUDENT;i+)printf(NO.%d%4.1fn,i+1,ave_stu(score,i);printf(nAveragescoreofcourse:n);for(j=0;jCOURSE;j+)printf(C%d%4.1fn,j+1,ave_cou(score,j);printf(nAveragescoreoftotal:%4.1fn,ave_tot(*score,STUDENT*COURSE);search(score,STUDENT);,第七章,第七章,floatave_stu(float(*p)COURSE,intn)floats;inti;s=0;for(i=0;iCOURSE;i+)s+=*(*(p+n)+i);s=s/COURSE;return(s);floatave_cou(float(*p)COURSE,intn)inti;floats;s=0;for(i=0;iSTUDENT;i+)s+=*(*(p+i)+n);s=s/STUDENT;return(s);,floatave_tot(float*p,intn)floats;inti;for(i=0;i=2)printf(%3d,i+1);for(j=0;jCOURSE;j+)printf(%4.1f,*(*(p+i)+j);printf(n);,第七章,第七章,#include#include#defineMAX100main()char*s,*t;intc;s=(char*)malloc(MAX*sizeof(char);gets(s);t=s;c=0;while(*t!=0)if(*t=$)c+;t+;printf(nThereare%d$in%sn,c,s);getch();,(5)输入一行文本,统计其中$字符出现的次数。,第七章,#include#includevoiddel_char(char*a,charch)while(*a!=ch)a+;strcpy(a,a+1);main()char*s,del;del=getchar();gets(s);del_char(s,del);puts(s);,(8)编制函数,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论