C编程(部分答案)

上传人:微*** 文档编号:168529074 上传时间:2022-11-10 格式:DOCX 页数:95 大小:51.45KB
返回 下载 相关 举报
C编程(部分答案)_第1页
第1页 / 共95页
C编程(部分答案)_第2页
第2页 / 共95页
C编程(部分答案)_第3页
第3页 / 共95页
点击查看更多>>
资源描述
谨慎#include void main(void) coutv*n coutn Hello! n;couy” * *n实验1-2#include void main(void)int a,b,c,sum;coutHInput a,b,c:”;cinabc;sum=a+b+c;coutSum=sumendl;实验1-3#include void main(void) float a,b,l,s;coutInput a,b:;cinab;l=2*(a+b);s=a*b;coutL=lendl; coutS=sendl;实验14#include void main(void)float f,c;coutv请输入华氏温度值:”;cinf;c=(f-32)*5.O/9.O;cout 摄氏温度值为: vcendl;实验15#include void main(void) int n,a,b,c,d,m;coutnInput n:;cinn;a=n/1000;b=(n-a* 1000)/100;c=(n-a*1000-b*100)/10;d=n%10;m=d* 1000+c* 100+b*l 0+a; coutMm=Mmendl;实验2-1#include void main(void) int a;coutr,Input a:;cina;if (a0)coutvvav为正数。n; elsecoutvvavv为负数。、n; if (a%2=0)couivvavv”为偶数。nn; elsecoutvvav为奇数。nH;)实验2-2#include #include void main(void) double x,y;coutInput x:;cinx;if (x5)y=-x+3.5;else if (x10)y=20-3.5*(x+3)*(x+3); elsey=x/2.0-3.5+sin(x); coutMy=Myendl;实验2-3#include void main(void)int a,c;float r,m,f;coutvv”请输入奖金数额:“;cina;if(a=8OO)c=8;elsec=a/100;switch (c)case 0:r=0;break;case 1 :r=0.02;break;case 2case 3:r=0.04;break;case 4:case 5:case 6:case 7:r=0.08;break;case 8:r=0.1;break;)m=a*r;f=a-m;cout税率:rend 1;cout v ” 应交税款:mendl;cout实得奖金: vfv vend 1;练习3-14#include void main(void)int a,b,c;coutInput a,b,c:H;cinabc;if (ab & bc)coutat,b,t,c & cb)coutat,a & ac)coutb,t,a,tcendl;else if (bc & ca)couta & ab)coutct,a,t,bendl;elsecoutct,b,taendl;)练习3-16#include void main(void)float datal,data2,result;char op;cout输入两个实数:;cindataldata2;cout”输入运算符:;cinop;switch (op)case +:result=data 1 +data2;break;case -:result二data 1 -data2;break;case *:result=datal *data2;break;case /tresult二data l/data2;break;)coutdatalopdata2-resultendl;练习3-21#include void main(void) int i;float t,sum;sum ;for(i=l;i=100;i+)t=1.0/i;sum=sum+t;)coutSum=Msumendl;)#include void main(void)int i;float t,sum;sum=0;i=l;while (i=100)t=1.0/i;sum=sum+t;i+;)coutHSum=nsumendl;I#include void main(void)int i;float t,sum;sum=0;i=l;dot=1.0/i;sum=sum+t;i+;)while (i=100);cout,Sum=,sumendl;练习3-22#include void main(void)float x,t,y;coutvv”请输入 x 的值(x0):cinx;t=1.0;y=0.0;while (t=le-4)y=y+t;t=t/x;cout,y=Hyendl;例题2-26 编写能显示平行四边形图形(图形组成)的程序。#include void main(void)int i,j,k;for (i=l;i=5;i+)for (k=l;k=5-i;k+)cout*for (j=l;j=10;j+)cout*1;coutendl;练习3-24#include void main(void)int n,ij,k;float c,sum,avg;i=0;j=0;k=0;sum=0.0;cout”请输入十天的温度值:;for (n=l;n0)i+;elseif(c=0)j+;elsek+;sum=sum+c;1avg=sum/10.0;cout0 度以上天数:Hiendl;cout0 度天数:njendl;cout0 度以下天数:kendl; cout”平均温度:Mavgendl;练习3-25#include void main(void)inti;long int t;float s;s=0;t=l;for (i=l;i=10;i+)t=t*i;s=s+t;coutsendl;练习3-26#include void main(void)int i,j,k;for (i=l;i=33;i+)for (j= 1 ;j=5O;j+)k=100-i-j;if(k%2=0) & (i*3+j*2+k/2=100) couti,t,j,t,kendl;练习3-27#include void main(void)int i,j,k;for (i=l;i=5;i+)for (k=l;k=5-i;k+) coutTfor (j=1 ;j=2*i-l ;j+) cout*;coutendl;)for (i=l;i=4;i+) for (k=l;k=i;k+) coutffor(H;j=9-2*i;j+) cout*;coutendl;实验4-1#include #define N 10 void main(void) int i,a,b,c,d,e;float sN;coutvv”请输入成绩:;for (i=0;iN;i+) cinsi;a=0;b=0;c=0;d=0;e=0;for (i=0;i=90 & si=80 & si=70 & si=60 & si=69) d+;else e+;)cout”各分数段人数为:Hendl; couicv”优(90-100): Haendl;coutH 良(889): Mbendl;coul 中(779): cendl;coutvv及格(669): Mdendl;couiw不及格(59): ueendl;实验4-2a#include #include #define N 10void main(void)int i,j,aN,temp;cout”请输入数据:“;for (i=0;iN;i+)cinai;for (i=0;iN-l;i+)for (j=O;jaj+l)temp=aj;aj=aj+ l;aj+ l=temp; for (i=0;iN;i+)coutsetw(6)ai;coutendl;实验4-2b#include #include #define N 10 void main(void) int i,j,aN,temp;coutvv”请输入数据:;for (i=0;iN;i+) cinai;for (i=0;iN-l;i+) for (j=i+l;jaj) temp=ai;ai=aj;aj=temp;for (i=0;ivN;i+)coutsetw(6)ai;coutendl;)实验4-3#include #include void main(void)inti,j,a55;int max,min,maxi,maxj,mini,minj,s;cout请输入数据:;for (i=0;i5;i+)for (j=O;j5;j+) cinai|j;for (i=0;i5;i+)for (j=O;j5;j+)coutsetw(6)ai j ;coutendl;1max=a00;min=a00;s=0;maxi=0;maxj=0;mini=0;minj=0;for(i=0;i5;i+)for (j=O;jmax)max=aij;maxi=i;maxj=j;if (aijmin)min=aij;mini=i;niinj=j;if (i=j)s=s+aij;)coutMmax=M,aMmaxi,HMMmaxj,=,maxendl; coutMmin=M,aHminiMMM,minjM=Mminendl;cout,s=,sendl;实验4-4#include #include #define M 3#define N 3 void main(void)int i,j,aMN,bMN,cMN;coutv请输入A矩阵数据:for (i=0;iM;i+)for (j=O;jN;j+) cinaij;cout请输入B矩阵数据:;for (i=0;iM;i+)for (j=O;jN;j+) cinbij;for (i=0;iM;i+)for (j=O;jN;j+)ciU=aij+bij;coutC 矩阵为:endl;for (i=0;iM;i+)for (j=O;jN;j+)coutsetw(6)ci j;coutendl;练习4-11#include #include void main(void)inti,j,a55;for (i=0;i5;i+)for (j=O;j=j)ai|j=l;else啲(j 冃-i+1;)for (i=0;i5;i+)for (j=O;j5;j+)coutsetw(6)aij;coutendl;练习4-18#include #include #define M 6#define N 5 void main(void) int sMN,i,j,sum,max;COUtVV请输入数据”;for (i=0;iM-l;i+)for(j=0;jN-l;j+) cinsij;for(i=O;iM-l;i+)sum=0;for (j=l;jN-l;j+) sum=sum+s|ij;si4=sum;)for(j=l;jN-l;j+)max=s0j;for(i=O;imax) max=sij;s5j=max;coutM学号“ vv“数学”语文”M外语” VV”总成绩”endl;coutnn”; for (i=0;iM-l;i+)for 0=O;jN;j+)coutsetw(8)si j ;coutendl;)coutMn”;coutn最高分”;for (j=l;jN-l;j+)coutsetw(8)s5j ;coutendl;#include #define N 10 void main(void) int aN,i,k;float sum,ave;COUtVV”请输入数据:“;for (i=0;i=N-l;i+) cinai;sum=0.0;k=0;for (i=0;i=N-l;i+) sum=sum+ai;if(ai60) k+;1ave=sum/N;coutvv”平均分:Haveendl;coutH 不及格人数: vvk vendl;)练习4-8#include void main(void) int a20,i;a0=0;al =0;a2=2;a3=5;for (i=4;i=19;i+)ai=ai-l+ai-2+ai-3+ai-4;for (i=0;i=19;i+) if(i%5=0) coutendl;coutai,t,;)coutendl;练习4-9a#include #define N 10void main(void)int aN,i,j,temp;cout”请输入数据:“;for (i=0;i=N-l;i+) cinai;for (i=0;i=N-2;i+)for (j=0;j=N-2-i;j+)if(aUaj+l)temp=a|j ;aj=aj+1 ;aj+1 =temp;for (i=0;i=N-l;i+)coutai,t;coutendl;练习4-9b#include #define N 10void main(void)int aN,i,j,temp;coutvv”请输入数据:;for (i=0;iN;i+) cinai;for (i=0;i=N-2;i+) for(j=i+l;j=N-l;j+)if(aiaUl)temp=ai;ai=aj;aj=temp;for (i=0;iN;i+)coutai,t,;coutendl;#include int sum(int n)int s;if(n=l)s=l;elses=n+sum(n-l); return s;void main(void)int m,total;coutnInput m:; cinm;total=sum(m);cout,Total=,totalendl;练习5-24#include float power(float x,int n) float p;if(n=0) p=l;elsep=x*power(x,n-l);return p;)void main(void)float y,t;int m;coutMInputcinym;t=power(y,m);cout,t=,tendl;实验5-1#include void main(void)int a 10,i,k,flag,top,bot,mid,loc; coutvv”输入数组数据:;for (i=0;i10;i+)cinai;cout ”输入要查找数据:“;cink;flag=0;top=0;bot=9;while (flag=O & top=bot)mid=(top+bot)/2;if(k=amid)flag=l;loc=mid;break;)else if (kamid) bot=mid-l;elsetop=mid+1;)if(flag=l)coutloc;elsecoutv“没有找到.”;)实验5-2a#include #include void main(void)char str80,strl40,str240;coutInput 2 string:*;cin.getline( str 1,40);cin.getline(str2,40);strcpy(str,strl);strcat(str,str2); coutstrendl;实验5-2b#include #include void main(void)char str80,strl40,str240;int i,j;coutnInput 2 string:1;cin.getline(strl ,40);cin.getline(str2,40);i=0;while (strli!=O)stri=strli;i+;1j=0;while (str2j!=0)stri=str2j;i+;j+;1st巾=0;coutstrendl;)实验5-3#include #include #define N 8void main(void)intcNN,m,n,k;char space二;for (n=l;n=N;n+)cnn=l;cnl=l;for (m=3;mN;m+)for (n=2;n=m-l;n+)cmn=cm-ln-l+cm-ln;for (m=l ;mN;m+)for (k= 1 ;k=(7-m)*4;k+) coutspace;for (n= 1 ;n=m;n+)coutsetw(8)cm n;coutendl;实验54#include #include #define M 7#define N 5 void main(void) float sMN,sum,ave,max,min,temp;int i,j,k;coutMInput Data:nendl;for (i=0;iM-2;i+)for(j=0;jN-l;j+) cinsij; for (i=0;iM-2;i+)sum=0.0;for(j=l;jN-l;j+) sum=sum+sij;ave=sum/(N-2);siN-l=ave;)for (j=l;jN-l;j+)max=s0j;min=s0j;for (i=0;imax) max=sij;if(sijmin) min=si 皿;)sM-2j=max;sM-lj=min;for (i=0;iM-3;i+)k=i;for (j=i+l;jM-2;j+) if(skN-lsjN-l) k=j;if(k!=j)for (j=O;jN;j+)temp=sij;si|j=skj;sk|j=temp;)coutn Num.,n Math. Chin. Engl. Aveg.nendl;coutM*endl;for (i=0;iM-2;i+)for U=O;jN;j+)coutsetw(6)si j;coutendl;)coutM max”;for (j=l;jN-l;j+)coutsetw(6)sM-2j;coutendl;coutM min”;for (j=l;jN-l;j+)coutsetw(6)sM-1 j;coutendl;coutendl;练习5-18#include float ftoc(float f)float c;c=(f-32)*5.0/9.0;return c;)void main(void)float fl,cl;coutnInput f:n;cinfl;cl=ftoc(fl);cout,C=,c lendl;)练习5-19int prime(int k)int flag,i;flag=l;for (i=2;i=k-l;i+)if(k%i=O)flag=0;break; return flag;#include void main(void)int n;coutInput n:;cinn;if(prime(n)=l)coutn”是素数。uendl;elsecoutvvn”不是素数。nend 1;练习5-21#include void main(void)float s;float pfh(int);s=pfh( 12)+pfh( 15)*pfh( 15);coutMs=Hsendl;)float pfh(int n)float p,i;P=0;for (i=l;i=n;i+) p=p+i*i;return p;函数例子#include #include float f(int n)float t,i;t=l;for (i=l;i=n;i+) t=t*i;return t;float pow(float x,int n)float y;int i;y=l;for (i=l;i=le-4);cout,sin(,a,)=,*sendl;#define N 5 void main(void) int aNj,j,k,tl; float sN,t2;coutv(”输入运动员号码和成绩: for (i=0;iN;i+)cinai; cinsi;1for (i=0;iN-l;i+)k二i;for (j=i+l;js|j) k二j;if(ki)11 =ai ;ai=ak ;ak=t 1; t2=s i ;si=sk ;sk=t2;) for (i 二 ;iN;i+) couti+lt; coutai,t,; coutsiV; coulendl;练习4-20#include # define M 3# define N 4# define K 3void main(void)int aMN,bNK,cMK,i,j,q;coutw”输入矩阵AH;for (i=0;iM;i+)for (j=O;jN;j+) cinaij;coutw”输入矩阵Bn;for (i=0;iN;i+)for (j 二 ;jK;j+)cinbi|j;for (i=0;iM;i+)for (j=O;jK;j+)i 皿=0;for (q=0;qN;q+)cij=cij+aiq*bqj;)co#输出矩阵Cn”;for (i=0;iM;i+)for (j=O;jK;j+)coutcijt;coutendl;练习4-17B#include #include #define N 5void main(void)char sN20,string20;int i,j,k;float aN,t;cout ”输入运动员号码:n;for (i=0;iN;i+)cin.getline(si,20);coutvv”输入运动员成绩:n”;for (i=0;iN;i+)coutsiM:M;cinai;)for (i=0;iN-l;i+)k=i;for (j=i+ l;jaj)k=j;if(ki)t=ai;ai=ak;ak=t;strcpy(string,si);strcpy(si,sk);strcpy(sk,string);)coutvv”名次 vvWvv”号码”成绩yvendl;for (i=0;iN;i+)couti+lV;coutsi,t,;coutai,t,;coutendl;实验6-1#include #include #define N 10void sortl(int a,int n)int ij,temp;for (i=0;in-l;i+)for(j=0;jaj+l) temp=aj;aj=aj+ l;aj+ l=temp; )void sort2(int a,int n)int i,j,temp;for (i=0;in-l;i+)for (j=i+l;jn;j+) if(aiaj) temp=ai;ai=aj;aj=temp;)void sort3(int a,int n)int i,j,k,temp;for (i=0;in-l;i+)k=i;for(j=i+l;jaj) k=j;if(ki)temp=ai ;ai=ak ;ak=temp;)void print(int a,int n)int i;for (i=0;in;i+)coutsetw(8)ai;coutendl;)void main(void)int aN,i;coutInput Array :M;for (i=0;iN;i+)cinai;sortl(a,N);print(a,N);sort2(a,N);print(a,N);sort3(a,N);print(a,N);实验6-2#include double px(double x,int n)double p;if(n=l)p=x;elsep=x-x*px(x,n-l);return p;)void main(void)double s,x,int n;coutnInput x:n;cinx;coutInput n:n;cinn;s=px(x,n);cout,s=,sendl;void str_cat(char s,char sl,char s2) strcpy(s,sl);strcat(s,s2);)void main(void)char str 80 ,strl40,str220;coutInput 2 string:n;cin.getline(str 1,40);cin.getline(str2,20);str_cat(str,str 1 ,str2);coutstrendl;实验6-3B#include void str_cat(char s,char sl,char s2)int i,j;i=0;while (si i!二、)si=sli;i+;j=0;while (s2j!=0)(si=s2j;i+;j+;si=0;void main(void)chars80,sl40,s220;coutInput 2 string:*;cin.getline(sl,20);cin.getline(s2,40);str_cat(s,sl,s2);coutsendl;实验6-4#include #include double fsin(double x)double s,p,t,k,f;int i;i=l;s=0.0;k=x;t=1.0;f=l;dop=f*k/t;s=s+p;i=i+2;k=k*x*x;t=t*i;f=(-l)*f;)while (fabs(p)=le-10);return s;void main(void)double x,y;coutInput x:; cinx;y=fsin(x);cout,y=,yendl;实验6-5#include #include #define N 10long f(int n) int i;long t;t=l;fbr(i=l;i=n;i+)t=t*i;return t;int cnm(int n,int m)int s;s=f(n)/(f(m)*f(n-m);return s;)void main(void)int aNN,n,m;fbr(n=O; nN;n+)for(m=0; m=n;m+) anm=cnm(n,m);for(n=0;nN ;n+)fbr(m=0; m=y)z=x;elsez 二 y;return z;#include include “fllemax.hvoid main(void)float a,b,c,m;coutvv”Input 3 float:;cinabc;m=max(max(a,b),c);coutnmax=nmendl;练习6-6#include #define M(a,b) ab?a:bvoid main(void)int x,y,z,ml,m2;coutnInput x,y,z:H;cinxyz;ml=M(x,y);m2 = M(ml,z);cout,max=,m2endl;#define S(a,b) a*b#define L(a,b) 2*(a+b) void main(void) float x,y,area,length;coutnInput x,y:n;cinxy;area=S(x,y);length=L(x,y);cout,area=,areaendl;coutMlength=lengthendl;)练习6-7B#include float areaf(float a,float b)float s;s=a*b;return s;)float lengthf(float a,float b)float 1;l=2*(a+b);return 1;void main(void)float x,y,area,length; coutnInput x,y:H; cinxy;area=areaf(x,y);length=lengthf(x,y);coutarea=nareaendl;cout,length=,lengthendl;练习6-8#include #include #define DEBUG#define L(a,b,c) (a+b+c)#define S(a,b,c) sqrt(b+c-a)/2*(a+c-b)/2*(a+b-c)/2*(a+b+c)/2) void main(void)float x,y,z,length,area;coutnInput x,y,z:H;cinxyz;length=L(x,y,z);#ifdef DEBUGcoutvL=vvlengthv vendl;#endifarea=S(x,y,z);cout,Length=,lengthendl;cout,Area=,areaendl;例 7-61用数组指针的方法求一维数组的最大值#include void main(void)int a5= 1,6,3,8,0,max,i;int *p;p=a;max=a0;for (i=0;imax) max=ai;coulvmax 1 =maxendl;max=p0;for (i=0;imax) max=pi;coutmax2=nmaxendl;max=*(a+0);for (i=0;imax) max=*(a+i);cout,max3=,maxendl;max=*(p+0);for (i=0;imax) max=*(p+i);cout,max4=,maxendl;max 二p;for (p=a;pmax) max=*p;cout,max5=,maxendl;void main(void) char s40;inti;coutnInput a line string:*; cin.getline(s,40); i=0;while (si!=*0*)i+; coutML=*iendl;例 7-10-1#include void main(void) char s40,*p;int n;coutInput a line string:*; cin.getline(s,40);p=s; n=0; while (*p!=*0*) n+;P+; coutsendl; coutnL=*nendl;例 7-12#include void str_cpy(char *pl,char *p2) while (*p2!=0)*pl=*p2;pl+; p2+;)*pl=0;Ivoid main(void)char strl8O,str28O;char *ql=strl,*q2=str2;coutMInput String2:n;cin.getline(str2,80);str_cpy(ql,q2);cout,Stringl=,strlendl;)void main(void)int a10,sum,i,*p;float ave;coutnInput array:n;for(i=0;i10;i+)cinai;sum=0;for (i=0;i10;i+) sum=sum+ai;ave=sum/10.0;coutMave 1 =,aveendl;sum=0;for (i=0;i10;i+)sum=sum4-*(a+i);ave=sum/10.0;coutnave2=naveendl;p=a;sum=0;for(i=0;i10;i+)sum=sum4-*(p+i);ave=sum/10.0;coutMave3=naveendI;sum=0;for (i=0;i10;i+) sum=sum+pi;ave=sum/10.0;sum=0;cout,ave4=,aveendl;for (p=a;pa+10;p+) sum=sum+*p;ave=sum/10.0;coutnave5=naveendl;void main(void)float a33,sum;int ij;coutnInput array:n;for (i=0;i3;i+)for(j=0;j3;j+) cinaij;sum=0;for (i=0;i3;i+)sum=sum4-*(ai+i);for (i=0;i3;i+)sum=sum+*(ai+2-i); cout,sum=,sumendl;实验7-3#include void str_cat(char *pl,char *p2)while(*pl!=01)pl+;while(*p2!=0)*pl=*p2;pl+;p2+;*pl=0;int str_cmp(char *p 1 ,char *p2)int c;while (*pl=*p2 & *pl!=0 & *p2!=0,)pl+;p2+;)c=*pl-*p2;return c;int str_len(char *p)int n;n=0;while (*p!二、)n+;p+;)return n;void main(void)char strl8O,str28O;char *ql=strl,*q2=str2;int cmp,len;coutInput 1 string:n;cin.getline( str 1,80);coutInput 2 string:M;cin.getline(str2,80);cmp=str_cmp(q l,q2);if(cmp=0)coutstrl =str2endl;else if (cmp0)coutstr 1 str2endl;elsecoutstrl str2endl;str_cat(ql,q2);coutstrl endl;len=str_len(q 1);coutlen=lenendl;)实验7-4#include void sort 1 (int a,int n) int i,j,k,temp;for(i=0;in-l;i+)k=i;for (j=i+l;jn;j+)if(aki)temp=ai;ai=ak;ak=temp;void sort2(int *p,int n)int i,j,k,temp;for (i=0;in-l;i+)k=i;for (j=i+l;jn;j+)if(*(p+k)i)temp=*(p+i);*(p+i)=*(p+k);*(p+k)=temp;)void sort3(int a,int n)int i,j,k,temp;for (i=0;in-l;i+)k=i;for (j=i+l;jn;j+)if(*(a+k)i)temp=*(a+i);*(a+i)=*(a+k);*(a+k)=temp;)void sort4(int *p
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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