版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章1.5题#include<iostream>usingnamespacestd;intmain(){cout<<"This"<<"is";cout<<"a"<<"C++";cout<<"program.";return0;1.6题#include<iostream>usingnamespacestd;intmain(){inta,b,c;a=10;b=23;c=a+b;cout<<"a+b=";cout<<c;cout<<endl;return0;}1.7七题#include<iostream>usingnamespacestd;intmain(){inta,b,c;intf(intx,inty,intz);cin>>a>>b>>c;c=f(a,b,c);cout<<c<<endl;return0;}intf(intx,inty,intz){intm;if(x<y)m=x;elsem=y;if(z<m)m=z;return(m);}1.8题#include<iostream>usingnamespacestd;intmain(){inta,b,c;cin>>a>>b;c=a+b;cout<<"a+b="<<a+b<<endl;return0;}1.9题#include<iostream>usingnamespacestd;intmain(){inta,b,c;intadd(intx,inty);cin>>a>>b;c=add(a,b);cout<<"a+b="<<c<<endl;return0;}intadd(intx,inty){intz;z=x+y;return(z);}2.3题#include<iostream>usingnamespacestd;intmain(){charc1='a',c2='b',c3='c',c4='\101',c5='\116';cout<<c1<<c2<<c3<<'\n';cout<<"\t\b"<<c4<<'\t'<<c5<<'\n';return0;}2.4题#include<iostream>usingnamespacestd;intmain(){charc1='C',c2='+',c3='+';cout<<"Isay:\""<<c1<<c2<<c3<<'\"';cout<<"\t\t"<<"Hesays:\"C++isveryinteresting!\""<<'\n';return0;}2.7题#include<iostream>usingnamespacestd;intmain(){inti,j,m,n;i=8;j=10;m=++i+j++;n=(++i)+(++j)+m;cout<<i<<'\t'<<j<<'\t'<<m<<'\t'<<n<<endl;return0;}2.8题#include<iostream>usingnamespacestd;intmain(){charc1='C',c2='h',c3='i',c4='n',c5='a';c1+=4;c2+=4;c3+=4;c4+=4;c5+=4;cout<<"passwordis:"<<c1<<c2<<c3<<c4<<c5<<endl;return0;}3.2题#include<iostream>#include<iomanip>usingnamespacestd;intmain(){floath,r,l,s,sq,vq,vz;constfloatpi=3.1415926;cout<<"pleaseenterr,h:";cin>>r>>h;l=2*pi*r;s=r*r*pi;sq=4*pi*r*r;vq=3.0/4.0*pi*r*r*r;vz=pi*r*r*h;cout<<setiosflags(ios::fixed)<<setiosflags(ios::right) <<setprecision(2);cout<<"l="<<setw(10)<<l<<endl;cout<<"s="<<setw(10)<<s<<endl;cout<<"sq="<<setw(10)<<sq<<endl;cout<<"vq="<<setw(10)<<vq<<endl;cout<<"vz="<<setw(10)<<vz<<endl;return0;}3.3题#include<iostream>usingnamespacestd;intmain(){floatc,f;cout<<"请输入一个华氏温度:";cin>>f;c=(5.0/9.0)*(f-32);//注意5和9要用实型表示,否则5/9值为0cout<<"摄氏温度为:"<<c<<endl;return0;};3.4题#include<iostream>usingnamespacestd;intmain(){charc1,c2;cout<<"请输入两个字符c1,c2:";c1=getchar();//将输入的第一个字符赋给c1c2=getchar();//将输入的第二个字符赋给c2cout<<"用putchar函数输出结果为:";putchar(c1);putchar(c2);cout<<endl;cout<<"用cout语句输出结果为:";cout<<c1<<c2<<endl;return0;}3.4题另一解#include<iostream>usingnamespacestd;intmain(){charc1,c2;cout<<"请输入两个字符c1,c2:";c1=getchar();//将输入的第一个字符赋给c1c2=getchar();//将输入的第二个字符赋给c2cout<<"用putchar函数输出结果为:";putchar(c1);putchar(44);putchar(c2);cout<<endl;cout<<"用cout语句输出结果为:";cout<<c1<<","<<c2<<endl;return0;}3.5题#include<iostream>usingnamespacestd;intmain(){charc1,c2;inti1,i2;//定义为整型cout<<"请输入两个整数i1,i2:";cin>>i1>>i2;c1=i1;c2=i2;cout<<"按字符输出结果为:"<<c1<<","<<c2<<endl;return0;}3.8题#include<iostream>usingnamespacestd;intmain(){inta=3,b=4,c=5,x,y;cout<<(a+b>c&&b==c)<<endl;cout<<(a||b+c&&b-c)<<endl;cout<<(!(a>b)&&!c||1)<<endl;cout<<(!(x=a)&&(y=b)&&0)<<endl;cout<<(!(a+b)+c-1&&b+c/2)<<endl;return0;}3.9题include<iostream>usingnamespacestd;intmain(){inta,b,c;cout<<"pleaseenterthreeintegernumbers:";cin>>a>>b>>c;if(a<b)if(b<c)cout<<"max="<<c;elsecout<<"max="<<b;elseif(a<c)cout<<"max="<<c;elsecout<<"max="<<a;cout<<endl; return0;}3.9题另一解#include<iostream>usingnamespacestd;intmain(){inta,b,c,temp,max;cout<<"pleaseenterthreeintegernumbers:";cin>>a>>b>>c;temp=(a>b)a:b;/*将a和b中的大者存入temp中*/max=(temp>c)temp:c;/*将a和b中的大者及c比较,最大者存入max*/cout<<"max="<<max<<endl;return0;}3.10题#include<iostream>usingnamespacestd;intmain(){intx,y;cout<<"enterx:";cin>>x;if(x<1){y=x;cout<<"x="<<x<<",y=x="<<y;}elseif(x<10)//1≤x<10{y=2*x-1;cout<<"x="<<x<<",y=2*x-1="<<y;}else//x≥10{y=3*x-11;cout<<"x="<<x<<",y=3*x-11="<<y;}cout<<endl; return0;}3.11题#include<iostream>usingnamespacestd;intmain(){floatscore;chargrade;cout<<"pleaseenterscoreofstudent:";cin>>score;while(score>100||score<0){cout<<"dataerror,enterdataagain.";cin>>score;}switch(int(score/10)){case10:case9:grade='A';break;case8:grade='B';break;case7:grade='C';break;case6:grade='D';break;default:grade='E';}cout<<"scoreis"<<score<<",gradeis"<<grade<<endl;return0;}3.12题#include<iostream>usingnamespacestd;intmain(){longintnum;intindiv,ten,hundred,thousand,ten_thousand,place;/*分别代表个位,十位,百位,千位,万位和位数*/cout<<"enteraninteger(0~99999):";cin>>num;if(num>9999)place=5;elseif(num>999)place=4;elseif(num>99)place=3;elseif(num>9)place=2;elseplace=1;cout<<"place="<<place<<endl;//计算各位数字ten_thousand=num/10000;thousand=(int)(num-ten_thousand*10000)/1000;hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10);cout<<"originalorder:";switch(place){case5:cout<<ten_thousand<<","<<thousand<<","<<hundred<<","<<ten<<","<<indiv<<endl; cout<<"reverseorder:"; cout<<indiv<<ten<<hundred<<thousand<<ten_thousand<<endl; break;case4:cout<<thousand<<","<<hundred<<","<<ten<<","<<indiv<<endl; cout<<"reverseorder:"; cout<<indiv<<ten<<hundred<<thousand<<endl; break;case3:cout<<hundred<<","<<ten<<","<<indiv<<endl; cout<<"reverseorder:"; cout<<indiv<<ten<<hundred<<endl; break;case2:cout<<ten<<","<<indiv<<endl; cout<<"reverseorder:"; cout<<indiv<<ten<<endl; break;case1:cout<<indiv<<endl; cout<<"reverseorder:"; cout<<indiv<<endl; break;}return0;} 3.13题#include<iostream>usingnamespacestd;intmain(){longi;//i为利润floatbonus,bon1,bon2,bon4,bon6,bon10;bon1=100000*0.1;//利润为10万元时的奖金bon2=bon1+100000*0.075;//利润为20万元时的奖金bon4=bon2+100000*0.05;//利润为40万元时的奖金bon6=bon4+100000*0.03;//利润为60万元时的奖金bon10=bon6+400000*0.015;//利润为100万元时的奖金cout<<"enteri:";cin>>i;if(i<=100000)bonus=i*0.1;//利润在10万元以内按10%提成奖金elseif(i<=200000)bonus=bon1+(i-100000)*0.075;//利润在10万元至20万时的奖金elseif(i<=400000)bonus=bon2+(i-200000)*0.05;//利润在20万元至40万时的奖金elseif(i<=600000)bonus=bon4+(i-400000)*0.03;//利润在40万元至60万时的奖金elseif(i<=1000000)bonus=bon6+(i-600000)*0.015;//利润在60万元至100万时的奖金elsebonus=bon10+(i-1000000)*0.01;//利润在100万元以上时的奖金cout<<"bonus="<<bonus<<endl;return0;}3.13题另一解#include<iostream>usingnamespacestd;intmain(){longi;floatbonus,bon1,bon2,bon4,bon6,bon10;intc;bon1=100000*0.1;bon2=bon1+100000*0.075;bon4=bon2+200000*0.05;bon6=bon4+200000*0.03;bon10=bon6+400000*0.015;cout<<"enteri:";cin>>i;c=i/100000;if(c>10)c=10;switch(c){case0:bonus=i*0.1;break;case1:bonus=bon1+(i-100000)*0.075;break;case2:case3:bonus=bon2+(i-200000)*0.05;break;case4:case5:bonus=bon4+(i-400000)*0.03;break;case6:case7:case8:case9:bonus=bon6+(i-600000)*0.015;break;case10:bonus=bon10+(i-1000000)*0.01;}cout<<"bonus="<<bonus<<endl;return0;}3.14题#include<iostream>usingnamespacestd;intmain(){intt,a,b,c,d;cout<<"enterfournumbers:";cin>>a>>b>>c>>d;cout<<"a="<<a<<",b="<<b<<",c="<<c<<",d="<<d<<endl;if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(a>d){t=a;a=d;d=t;}if(b>c){t=b;b=c;c=t;}if(b>d){t=b;b=d;d=t;}if(c>d){t=c;c=d;d=t;}cout<<"thesortedsequence:"<<endl;cout<<a<<","<<b<<","<<c<<","<<d<<endl;return0;}3.15题#include<iostream>usingnamespacestd;intmain(){intp,r,n,m,temp;cout<<"pleaseentertwopositiveintegernumbersn,m:";cin>>n>>m;if(n<m){temp=n;n=m;m=temp;//把大数放在n中,小数放在m中}p=n*m;//先将n和m的乘积保存在p中,以便求最小公倍数时用while(m!=0)//求n和m的最大公约数{r=n%m;n=m;m=r;}cout<<"HCF="<<n<<endl;cout<<"LCD="<<p/n<<endl;//p是原来两个整数的乘积return0;}3.16题#include<iostream>usingnamespacestd;intmain(){charc;intletters=0,space=0,digit=0,other=0;cout<<"enteroneline::"<<endl;while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++;elseif(c=='') space++;elseif(c>='0'&&c<='9') digit++;else other++;}cout<<"letter:"<<letters<<",space:"<<space<<",digit:"<<digit<<",other:"<<other<<endl;return0;}3.17题#include<iostream>usingnamespacestd;intmain(){inta,n,i=1,sn=0,tn=0;cout<<"a,n=:";cin>>a>>n;while(i<=n){tn=tn+a;//赋值后的tn为i个a组成数的值sn=sn+tn;//赋值后的sn为多项式前i项之和a=a*10;++i;}cout<<"a+aa+aaa+...="<<sn<<endl;return0;}3.18题#include<iostream>usingnamespacestd;intmain(){floats=0,t=1;intn;for(n=1;n<=20;n++){t=t*n;//求n!s=s+t;//将各项累加}cout<<"1!+2!+...+20!="<<s<<endl;return0;}3.19题#include<iostream>usingnamespacestd;intmain(){inti,j,k,n;cout<<"narcissusnumbersare:"<<endl;for(n=100;n<1000;n++){i=n/100;j=n/10-i*10;k=n%10;if(n==i*i*i+j*j*j+k*k*k)cout<<n<<"";}cout<<endl; return0;}3.20题#include<iostream>usingnamespacestd;intmain(){constintm=1000;//定义寻找范围intk1,k2,k3,k4,k5,k6,k7,k8,k9,k10;inti,a,n,s;for(a=2;a<=m;a++)//a是2~1000之间的整数,检查它是否为完数{n=0;//n用来累计a的因子的个数s=a;//s用来存放尚未求出的因子之和,开始时等于afor(i=1;i<a;i++)//检查i是否为a的因子if(a%i==0)//如果i是a的因子 {n++;//n加1,表示新找到一个因子 s=s-i;//s减去已找到的因子,s的新值是尚未求出的因子之和 switch(n)//将找到的因子赋给k1,...,k10 {case1: k1=i;break;//找出的笫1个因子赋给k1 case2: k2=i;break;//找出的笫2个因子赋给k2 case3: k3=i;break;//找出的笫3个因子赋给k3 case4: k4=i;break;//找出的笫4个因子赋给k4 case5: k5=i;break;//找出的笫5个因子赋给k5 case6: k6=i;break;//找出的笫6个因子赋给k6 case7: k7=i;break;//找出的笫7个因子赋给k7 case8: k8=i;break;//找出的笫8个因子赋给k8 case9: k9=i;break;//找出的笫9个因子赋给k9 case10: k10=i;break;//找出的笫10个因子赋给k10 } }if(s==0)//s=0表示全部因子都已找到了{cout<<a<<"isa完数"<<endl; cout<<"itsfactorsare:";if(n>1)cout<<k1<<","<<k2;//n>1表示a至少有2个因子if(n>2)cout<<","<<k3;//n>2表示至少有3个因子,故应再输出一个因子if(n>3)cout<<","<<k4;//n>3表示至少有4个因子,故应再输出一个因子if(n>4)cout<<","<<k5;//以下类似if(n>5)cout<<","<<k6;if(n>6)cout<<","<<k7;if(n>7) cout<<","<<k8;if(n>8) cout<<","<<k9;if(n>9) cout<<","<<k10;cout<<endl<<endl;}}return0;}3.20题另一解#include<iostream>usingnamespacestd;intmain(){intm,s,i;for(m=2;m<1000;m++){s=0;for(i=1;i<m;i++)if((m%i)==0)s=s+i;if(s==m){cout<<m<<"isa完数"<<endl; cout<<"itsfactorsare:";for(i=1;i<m;i++)if(m%i==0)cout<<i<<"";cout<<endl;}}return0;}3.20题另一解#include<iostream>usingnamespacestd;intmain(){intk[11];inti,a,n,s;for(a=2;a<=1000;a++){n=0;s=a;for(i=1;i<a;i++)if((a%i)==0){n++;s=s-i;k[n]=i;//将找到的因子赋给k[1]┅k[10]}if(s==0){cout<<a<<"isa完数"<<endl;cout<<"itsfactorsare:";for(i=1;i<n;i++)cout<<k[i]<<"";cout<<k[n]<<endl;}}return0;}3.21题#include<iostream>usingnamespacestd;intmain(){inti,t,n=20;doublea=2,b=1,s=0;for(i=1;i<=n;i++){s=s+a/b;t=a;a=a+b;//将前一项分子及分母之和作为下一项的分子b=t;//将前一项的分子作为下一项的分母}cout<<"sum="<<s<<endl;return0;}3.22题#include<iostream>usingnamespacestd;intmain(){intday,x1,x2;day=9;x2=1;while(day>0){x1=(x2+1)*2;//第1天的桃子数是第2天桃子数加1后的2倍x2=x1;day--;}cout<<"total="<<x1<<endl;return0;}3.23题#include<iostream>#include<cmath>usingnamespacestd;intmain(){floata,x0,x1;cout<<"enterapositivenumber:";cin>>a;//输入a的值x0=a/2;x1=(x0+a/x0)/2;do{x0=x1;x1=(x0+a/x0)/2;}while(fabs(x0-x1)>=1e-5);cout<<"Thesquarerootof"<<a<<"is"<<x1<<endl;return0;}3.24题#include<iostream>usingnamespacestd;intmain(){inti,k;for(i=0;i<=3;i++)//输出上面4行*号{for(k=0;k<=2*i;k++)cout<<"*";//输出*号cout<<endl;//输出完一行*号后换行}for(i=0;i<=2;i++)//输出下面3行*号{for(k=0;k<=4-2*i;k++)cout<<"*";//输出*号cout<<endl;//输出完一行*号后换行} return0;}3.25题#include<iostream>usingnamespacestd;intmain(){chari,j,k;/*i是a的对手;j是b的对手;k是c的对手*/for(i='X';i<='Z';i++)for(j='X';j<='Z';j++)if(i!=j)for(k='X';k<='Z';k++) if(i!=k&&j!=k) if(i!='X'&&k!='X'&&k!='Z') cout<<"A--"<<i<<"B--"<<j<<"C--"<<k<<endl;return0;}4.1题#include<iostream>usingnamespacestd;intmain(){inthcf(int,int);intlcd(int,int,int);intu,v,h,l;cin>>u>>v;h=hcf(u,v);cout<<"H.C.F="<<h<<endl;l=lcd(u,v,h);cout<<"L.C.D="<<l<<endl;return0;}inthcf(intu,intv){intt,r;if(v>u){t=u;u=v;v=t;}while((r=u%v)!=0){u=v;v=r;}return(v);}intlcd(intu,intv,inth){return(u*v/h);}4.2题#include<iostream>#include<math.h>usingnamespacestd;floatx1,x2,disc,p,q;intmain(){voidgreater_than_zero(float,float);voidequal_to_zero(float,float);voidsmaller_than_zero(float,float);floata,b,c;cout<<"inputa,b,c:";cin>>a>>b>>c;disc=b*b-4*a*c;cout<<"root:"<<endl;if(disc>0){greater_than_zero(a,b);cout<<"x1="<<x1<<",x2="<<x2<<endl;}elseif(disc==0){equal_to_zero(a,b);cout<<"x1="<<x1<<",x2="<<x2<<endl;}else{smaller_than_zero(a,b);cout<<"x1="<<p<<"+"<<q<<"i"<<endl;cout<<"x2="<<p<<"-"<<q<<"i"<<endl;}return0;}voidgreater_than_zero(floata,floatb)/*定义一个函数,用来求disc>0时方程的根*/{x1=(-b+sqrt(disc))/(2*a);x2=(-b-sqrt(disc))/(2*a);}voidequal_to_zero(floata,floatb)/*定义一个函数,用来求disc=0时方程的根*/{x1=x2=(-b)/(2*a);}voidsmaller_than_zero(floata,floatb)/*定义一个函数,用来求disc<0时方程的根*/{p=-b/(2*a);q=sqrt(-disc)/(2*a);}4.3题#include<iostream>usingnamespacestd;intmain(){intprime(int);/*函数原型声明*/intn;cout<<"inputaninteger:";cin>>n;if(prime(n))cout<<n<<"isaprime."<<endl;elsecout<<n<<"isnotaprime."<<endl;return0;}intprime(intn){intflag=1,i;for(i=2;i<n/2&&flag==1;i++)if(n%i==0)flag=0;return(flag);}4.4题#include<iostream>usingnamespacestd;intmain(){intfac(int);inta,b,c,sum=0;cout<<"entera,b,c:";cin>>a>>b>>c;sum=sum+fac(a)+fac(b)+fac(c);cout<<a<<"!+"<<b<<"!+"<<c<<"!="<<sum<<endl;return0;}intfac(intn){intf=1;for(inti=1;i<=n;i++)f=f*i;returnf;}4.5题#include<iostream>#include<cmath>usingnamespacestd;intmain(){doublee(double);doublex,sinh;cout<<"enterx:";cin>>x;sinh=(e(x)+e(-x))/2;cout<<"sinh("<<x<<")="<<sinh<<endl;return0;}doublee(doublex){returnexp(x);}4.6题//牛顿迭代法#include<iostream>#include<cmath>usingnamespacestd;intmain(){doublesolut(double,double,double,double);doublea,b,c,d;cout<<"inputa,b,c,d:";cin>>a>>b>>c>>d;cout<<"x="<<solut(a,b,c,d)<<endl;return0;}doublesolut(doublea,doubleb,doublec,doubled){doublex=1,x0,f,f1;do{x0=x;f=((a*x0+b)*x0+c)*x0+d;f1=(3*a*x0+2*b)*x0+c;x=x0-f/f1;}while(fabs(x-x0)>=1e-5);return(x);}intGcd_2(inta,intb)//欧几里德算法求a,b的最大公约数{if(a<=0||b<=0)//预防错误return0;inttemp;while(b>0)//b总是表示较小的那个数,若不是则交换a,b的值{temp=a%b;//迭代关系式a=b;//a是那个胆小鬼,始终跟在b的后面b=temp;//b向前冲锋占领新的位置}returna;}4.7题#include<iostream>#include<cmath>usingnamespacestd;intmain(){voidgodbaha(int);intn;cout<<"inputn:";cin>>n;godbaha(n);return0;}voidgodbaha(intn){intprime(int);inta,b;for(a=3;a<=n/2;a=a+2){if(prime(a)){b=n-a;if(prime(b)) cout<<n<<"="<<a<<"+"<<b<<endl;}}}intprime(intm){inti,k=sqrt(m);for(i=2;i<=k;i++) if(m%i==0)break;if(i>k)return1;elsereturn0;}4.8题//递归法#include<iostream>usingnamespacestd;intmain(){intx,n;floatp(int,int);cout<<"inputn&x:";cin>>n>>x;cout<<"n="<<n<<",x="<<x<<endl;;cout<<"P"<<n<<"(x)="<<p(n,x)<<endl;return0;}floatp(intn,intx){if(n==0)return(1);elseif(n==1)return(x);elsereturn(((2*n-1)*x-p((n-1),x)-(n-1)*p((n-2),x))/n);}4.9题//汉诺塔问题#include<iostream>usingnamespacestd;intmain(){voidhanoi(intn,charone,chartwo,charthree);intm;cout<<"inputthenumberofdiskes:";cin>>m;cout<<"Thestepsofmoving"<<m<<"disks:"<<endl;hanoi(m,'A','B','C');return0;}voidhanoi(intn,charone,chartwo,charthree) //将n个盘从one座借助two座,移到three座{voidmove(charx,chary);if(n==1)move(one,three);else{hanoi(n-1,one,three,two);move(one,three);hanoi(n-1,two,one,three);}}voidmove(charx,chary){cout<<x<<"-->"<<y<<endl;}4.10题#include<iostream>usingnamespacestd;intmain(){voidconvert(intn);intnumber;cout<<"inputaninteger:";cin>>number;cout<<"output:"<<endl;if(number<0){cout<<"-";number=-number;}convert(number);cout<<endl;return0;}voidconvert(intn)//感觉根本想不出的么{inti;charc;if((i=n/10)!=0)convert(i);c=n%10+'0';cout<<""<<c;}4.11题#include<iostream>usingnamespacestd;intmain(){intf(int);intn,s;cout<<"inputthenumbern:";cin>>n;s=f(n);cout<<"Theresultis"<<s<<endl;return0;}intf(intn){;if(n==1)return1;elsereturn(n*n+f(n-1));}4.12题#include<iostream>#include<cmath>usingnamespacestd;#defineS(a,b,c)(a+b+c)/2#defineAREA(a,b,c)sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c))intmain(){floata,b,c;cout<<"inputa,b,c:";cin>>a>>b>>c;if(a+b>c&&a+c>b&&b+c>a)cout<<"area="<<AREA(a,b,c)<<endl;elsecout<<"Itisnotatriangle!"<<endl;return0;}4.14题#include<iostream>usingnamespacestd;//#defineLETTER1intmain(){charc;cin>>c;#ifLETTERif(c>='a'&&c<='z')c=c-32;#elseif(c>='A'&&c<='Z')c=c+32;#endifcout<<c<<endl;return0;}4.15题#include<iostream>usingnamespacestd;#defineCHANGE1intmain(){charch[40];cout<<"inputtext:"<<endl;;gets(ch);#if(CHANGE){for(inti=0;i<40;i++){if(ch[i]!='\0')if(ch[i]>='a'&&ch[i]<'z'||ch[i]>'A'&&ch[i]<'Z')ch[i]+=1;elseif(ch[i]=='z'||ch[i]=='Z')ch[i]-=25;}}#endifcout<<"output:"<<endl<<ch<<endl;return0;}4.16题file#include<iostream>usingnamespacestd;inta;intmain(){externintpower(int);intb=3,c,d,m;cout<<"enteranintegeraanditspowerm:"<<endl;cin>>a>>m;c=a*b;cout<<a<<"*"<<b<<"="<<c<<endl;d=power(m);cout<<a<<"**"<<m<<"="<<d<<endl;return0;}4.16题fileexterninta;intpower(intn){inti,y=1;for(i=1;i<=n;i++)y*=a;returny;}5.1题#include<iostream>usingnamespacestd;intmain(){cout<<'2'<<'';for(inti=3;i<=100;i++){boolt=true;for(inta=2;a<i;a++)if(i%a==0){t=false;break;}if(t)cout<<i<<'';}return0;}#include<iostream>#include<iomanip>usingnamespacestd;#include<math.h>intmain(){inti,j,n,a[101];for(i=1;i<=100;i++)a[i]=i;a[1]=0;for(i=2;i<sqrt(100);i++)for(j=i+1;j<=100;j++){if(a[i]!=0&&a[j]!=0) if(a[j]%a[i]==0) a[j]=0;}cout<<endl;for(i=1,n=0;i<=100;i++){if(a[i]!=0){cout<<setw(5)<<a[i]<<"";n++;}if(n==10){cout<<endl; n=0;}} cout<<endl; return0;}5.2题#include<iostream>usingnamespacestd;//#include<math.h>intmain(){inti,j,min,temp,a[11];cout<<"enterdata:"<<endl;for(i=1;i<=10;i++){cout<<"a["<<i<<"]=";cin>>a[i];//输入10个数}cout<<endl<<"Theoriginalnumbers:"<<endl;;for(i=1;i<=10;i++)cout<<a[i]<<"";//输出这10个数cout<<endl;;for(i=1;i<=9;i++)//以下8行是对10个数排序{min=i;for(j=i+1;j<=10;j++)if(a[min]>a[j])min=j;temp=a[i];//以下3行将a[i+1]~a[10]中最小者及a[i]对换a[i]=a[min];a[min]=temp;}cout<<endl<<"Thesortednumbers:"<<endl;for(i=1;i<=10;i++)//输出已排好序的10个数cout<<a[i]<<"";cout<<endl;return0;}#include<iostream>usingnamespacestd;intmain(){inta[10],e,k,t;for(inti=0;i<10;i++){cin>>a[i];}for(inti=0;i<9;i++){k=i;for(t=i+1;t<10;t++){if(a[i]<a[t])k=t;}e=a[i];a[i]=a[k];a[k]=e;}for(inti=0;i<10;i++){cout<<a[i]<<'';}return0;}#include<iostream>#include<iomanip>usingnamespacestd;intmain(){inta[10][10];for(inti=0;i<10;i++){for(intt=0;t<10;t++)a[i][t]=0;}for(inti=0;i<10;i++)a[i][i]=1;for(inti=0;i<10;i++)a[i][0]=1;for(inti=2;i<10;i++){for(intt=1;t<=i-1;t++)a[i][t]=a[i-1][t-1]+a[i-1][t];}for(inti=0;i<10;i++){for(intt=0;t<10;t++){if(a[i][t]!=0)cout<<a[i][t]<<'';}cout<<endl;}return0;}我的第一个带指针的C++程序,呵呵~~#include<iostream>usingnamespacestd;intmain(){char*p;inti=0;charc[100];gets(c);p=c;while(*p!='\0'){i++;p++;}cout<<i;return0;}5.3题#include<iostream>usingnamespacestd;intmain(){inta[3][3],sum=0;inti,j;cout<<"enterdata:"<<endl;;for(i=0;i<3;i++)for(j=0;j<3;j++)cin>>a[i][j];for(i=0;i<3;i++)sum=sum+a[i][i];cout<<"sum="<<sum<<endl;return0;}5.4题#include<iostream>usingnamespacestd;intmain(){inta[11]={1,4,6,9,13,16,19,28,40,100};intnum,i,j;cout<<"arraya:"<<endl;for(i=0;i<10;i++)cout<<a[i]<<"";cout<<endl;;cout<<"insertdata:";cin>>num;if(num>a[9])a[10]=num;else{for(i=0;i<10;i++){if(a[i]>num){for(j=9;j>=i;j--)a[j+1]=a[j];a[i]=num; break;}}}cout<<"Now,arraya:"<<endl;for(i=0;i<11;i++)cout<<a[i]<<"";cout<<endl;return0;}5.5题#include<iostream>usingnamespacestd;intmain(){constintn=5;inta[n],i,temp;cout<<"enterarraya:"<<endl;for(i=0;i<n;i++)cin>>a[i];cout<<"arraya:"<<endl;for(i=0;i<n;i++)cout<<a[i]<<"";for(i=0;i<n/2;i++)//循环的作用是将对称的元素的值互换{temp=a[i];a[i]=a[n-i-1];a[n-i-1]=temp;}cout<<endl<<"Now,arraya:"<<endl;for(i=0;i<n;i++)cout<<a[i]<<"";cout<<endl;return0;}5.6题#include<iostream>#include<iomanip>usingnamespacestd;intmain(){constintn=11;inti,j,a[n][n];for(i=1;i<n;i++){a[i][i]=1;a[i][1]=1;}for(i=3;i<n;i++)for(j=2;j<=i-1;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=1;i<n;i++){for(j=1;j<=i;j++)cout<<setw(5)<<a[i][j]<<"";cout<<endl;}cout<<endl;return0;}5.7题#include<iostream>usingnamespacestd;intmain(){constintn=4,m=5;//假设数组为4行5列inti,j,a[n][m],max,maxj;boolflag;for(i=0;i<n;i++)//输入数组for(j=0;j<m;j++)cin>>a[i][j];for(i=0;i<n;i++){max=a[i][0];maxj=0;for(j=0;j<m;j++)//找出第i行中的最大数 if(a[i][j]>max) {max=a[i][j];//将本行的最大数存放在max中 maxj=j;//将最大数所在的列号存放在maxj中 }flag=true;//先假设是鞍点,以flag为真代表for(intk=0;k<n;k++) if(max>a[k][maxj])//将最大数和其同列元素相比 {flag=false;//如果max不是同列最小,表示不是鞍点令flag1为假 continue;}if(flag)//如果flag1为真表示是鞍点 {cout<<"a["<<i<<"]["<<"["<<maxj<<"]="<<max<<endl; //输出鞍点的值和所在行列号 break; }}if(!flag) //如果flag为假表示鞍点不存在cout<<"Itdoesnotexist!"<<endl;return0;}5.8题#include<iostream>usingnamespacestd;intmain(){constintn=7;inti,number,top,bott,mid,loca,a[n];boolflag=true,sign;charc;cout<<"enterdata:"<<endl;;cin>>a[0];i=1;while(i<n){cin>>a[i];if(a[i]>=a[i-1])i++;elsecout<<"enterthisdataagain:";}cout<<endl;for(i=0;i<n;i++)cout<<a[i]<<"";cout<<endl;while(flag){cout<<"inputnumbertolookfor:";cin>>number;sign=false;top=0;//top是查找区间的起始位置bott=n-1;//bott是查找区间的最末位置if((number<a[0])||(number>a[n-1]))//要查的数不在查找区间内loca=-1;//表示找不到while((!sign)&&(top<=bott)){mid=(bott+top)/2;if(number==a[mid]){loca=mid;cout<<"Find"<<number<<",itspositionis"<<loca+1<<endl; sign=true;}elseif(number<a[mid])bott=mid-1;elsetop=mid+1;}if(!sign||loca==-1)cout<<number<<"hasnotfound."<<endl;;cout<<"continuornot(Y/N)";cin>>c;if(c=='N'||c=='n') flag=false;}return0;}5.9题#include<iostream>usingnamespacestd;intmain(){intsum_day(int,int);intleap(intyear);intyear,month,day,days=0;cout<<"inputdate(year,month,day):";cin>>year>>month>>day;cout<<year<<"/"<<month<<"/"<<day;days=sum_day(month,day);/*调用函数一*/if(leap(year)&&month>=3)/*调用函数二*/days=days+1;cout<<"isthe"<<days<<"thdayinthisyear."<<endl;return0;}intsum_day(intmonth,intday)//计算日期{inti;intday_tab[12]={31,28,31,30,31,30,31,31,30,31,30,31};for(i=0;i<month-1;i++)day+=day_tab[i];return(day);}intleap(intyear)//判断是否为闰年{intleap;leap=year%4==0&&year%100!=0||year%400==0;return(leap);}5.10题#include<iostream>usingnamespacestd;intmain(){inti,j,upper,lower,digit,space,other;chartext[3][80];upper=lower=digit=space=other=0;for(i=0;i<3;i++){cout<<"pleaseinputline"<<i+1<<endl;gets(text[i]);for(j=0;j<80&&text[i][j]!='\0';j++){if(text[i][j]>='A'&&text[i][j]<='Z')upper++;elseif(text[i][j]>='a'&&text[i][j]<='z')lower++;elseif(text[i][j]>='0'&&text[i][j]<='9')digit++;elseif(text[i][j]=='')space++;elseother++;}}cout<<"uppercase:"<<upper<<endl;cout<<"lowercase:"<<lower<<endl;cout<<"digit:"<<digit<<endl;cout<<"space:"<<space<<endl;cout<<"other:"<<other<<endl;return0;}5.11题#include<iostream>usingnamespacestd;intmain(){chara[5]={'*','*','*','*','*'};inti,j,k;charspace='';for(i=0;i<5;i++)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学一年级加减法口算100道A4直接打印
- 小学五年级数学上期小数点乘除法计算习题
- 中国中学生心理健康量表共60项-分为10个因子-各因子所包
- 企业财务报表附注
- 《华为管理之道教材》课件
- 电火焊工必知必会知识点
- 食品行业食品安全检测总结
- 健身行业的个人发展规划计划
- 印刷行业印刷排版培训总结
- 纺织业人事工作总结
- 《广东省普通高中学生档案》模板
- GB/T 41120-2021无损检测非铁磁性金属材料脉冲涡流检测
- GB/T 2-2016紧固件外螺纹零件末端
- GB/T 12467.5-2009金属材料熔焊质量要求第5部分:满足质量要求应依据的标准文件
- GB 17740-1999地震震级的规定
- 安全生产事故举报奖励制度
- 冠心病健康教育完整版课件
- 国家开放大学《理工英语1》单元自测8试题答案
- 重症患者的容量管理课件
- 期货基础知识TXT
- 《尖利的物体会伤人》安全教育课件
评论
0/150
提交评论