




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章
1.5题
#include<iostream>
usingnamespacestd;
intmain()
(
coutvv”This“vv”is”;
cout«,,a',«,,C-H-H-
cout«Hprogram.H;
return0;
1.6题
#include<iostream>
usingnamespacestd;
intmain()
(
inta,b,c;
a=10;
b=23;
c=a+b;
cout«na+b=n;
cout«c;
cout«endl;
return0;
}
1.7七题
#include<iostream>
usingnamespacestd;
intmain()
(
inta,b,c;
intf(intx,inty,intz);
cin»a»b»c;
c=fifa,b,c);
cout«c«endl;
return0;
}
intf(intx,inty,intz)
(
intm;
if(x<y)m=x;
elsem=y;
if(z<m)m=z;
retum(m);
}
1.8题
#include<iostream>
usingnamespacestd;
intmain()
(
inta,b,c;
cin»a»b;
c=a+b;
cout«,,a4-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«na+b=n«c«endl;
return0;
)
intadd(intx,inty)
{intz;
z=x+y;
return(z);
}
2.3题
#include<iostream>
usingnamespacestd;
intmain()
{charcl='a',c2='b',c3='c',c4='\10r,c5='\l16;
cout«c1<<c2«c3«,\n,;
cout«,,\t\bn«c4«,\t'«c5«'\n,;
return0;
}
2.4题
#include<iostream>
usingnamespacestd;
intmain()
{charcl='C,c2='+',c3='+';
cout«nIsay:\HH«cl«c2«c3«,\n,;
cout«n\t\tH«"Hesays:\"C++isveryinteresting!\""«
return0;
}
2.7题
#include<iostream>
usingnamespacestd;
intmain()
{inti,j,m,n;
i=8;
j=10;
m=++i+j++;
n=(++i)+("Hj)+m;
cout«i«,\t,«j«'\t,«m«,\t,«n«endl;
return0;
)
2.8题
#include<iostream>
usingnamespacestd;
intmain()
{charcl-C,c2-h\c3-i\c4='n\c5-a*;
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
cout«npasswordis:n«c1«c2«c3«c4«c5«end1;
return0;
}
3.2题
#include<iostream>
#include<iomanip>
usingnamespacestd;
intmain()
{floath,r,l,s,sq,vq,vz;
constfloatpi=3.1415926;
cout«npleaseenterr,h:n;
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«nl=H«setw(lO)«l«endl;
cout«Ms=H«setw(10)«s«endl;
cout«nsq="«setw(lO)«sq«endl;
cout«nvq=n«setw(10)«vq«endl;
cout«nvz=n«setw(10)«vz«endl;
return0;
}
3.3题
#include<iostream>
usingnamespacestd;
intmain()
{floatc,f;
coutw”请输入一个华氏温度:“;
cin»f;
c=(5.0/9.0)*(A32);〃注意5和9要用实型表示,否则5/9值为0
cout«"摄氏温度为:"wcwendl;
return0;
};
3.4题
#include<iostream>
usingnamespacestd;
intmain()
{charcl,c2;
coutw”请输入两个字符cl,c2:M;
cl=getchar();〃将输入的第一个字符赋给cl
c2=getchar();〃将输入的第二个字符赋给c2
coutvv”用putchar函数输出结果为:";
putchar(c1);
putchar(c2);
cout«endl;
cout«"用cout语句输出结果为:";
cout«c1«c2«endl;
return0;
}
3.4题另一•解
#include<iostream>
usingnamespacestd;
intmain()
{charcl,c2;
cout«”请输入两个字符cl,c2:M;
cl=getchar();〃将输入的第一个字符赋给cl
c2=getchar();〃将输入的第二个字符赋给c2
coutvv”用putchar函数输出结果为:“;
putchar(cl);
putchar(44);
putchar(c2);
cout«endl;
coutvv”用cout语句输出结果为:“;
cout«c1«H,H«c2«endl;
return0;
}
3.5题
#include<iostream>
usingnamespacestd;
intmain()
{charcl,c2;
intil,i2;〃定义为整型
coutvv”请输入两个整数il,i2:n;
cin»il»i2;
cl=il;
c2=i2;
coutw”按字符输出结果为:“vvclw",”v〈c2vvendl;
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||l)«endl;
cout«(!(x=a)&&(y=b)&&0)«endl;
cout«(!(a+b)+c-l&&b+c/2)«endl;
return0;
}
3.9题
include<iostream>
usingnamespacestd;
intmain()
{inta,b,c;
cout«npleaseenterthreeintegernumbers:";
cin»a»b»c;
if(a<b)
ifi[b<c)
cout«Hmax=H«c;
else
cout«nmax=H«b;
elseif(a<c)
cout«Hmax=H«c;
else
cout«nmax=M«a;
cout«endl;
return0;
}
3.9题另一解
#include<iostream>
usingnamespacestd;
intmain()
{inta,b,c,temp,max;
cout«npleaseenterthreeintegernumbers:";
cin»a»b»c;
temp=(a>b)?a:b;/*将a和b中的大者存入temp中*/
max=(temp>c)?temp:c;/*将a和b中的大者与c比较,最大者存入max
*/
cout«nmax=,,«max«endl;
return0;
|
3.10题
#include<iostream>
usingnamespacestd;
intmain()
{intx,y;
cout«nenterx:n;
cin»x;
if(x<l)
{y=x;
cout«Hx="«x«n,y=x=H«y;
}
elseif(x<10)//l<x<10
{y=2*x-l;
cout〈v”x="vvxvv”,y=2*x-1=H«y;
)
else//x>10
{y=3*x-ll;
cout«nx="«x«n,y=3*x-ll-*«y;
cout«endl;
return0;
}
3.11题
#include<iostream>
usingnamespacestd;
intmain()
{floatscore;
chargrade;
cout«npleaseenterscoreofstudent:";
cin»score;
while(score>100||score<0)
{cout«Hdataerror,enterdataagain.";
cin»score;
}
switch(int(score/l0))
{case10:
case9:grade=,A,;break;
case8:grade-B';break;
case7:grade-C*;break;
case6:grade='D';break;
default:grade-E';
}
cout«nscoreisn«score«n,gradeis"«grade«endl;
return0;
}
3.12题
#include<iostream>
usingnamespacestd;
intmain()
{longintnum;
intindiv,ten,hundred,thousand,tenthousand,place;
/*分别代表个位,十位,百位,千位,万位和位数
*/
cout«nenteraninteger(0-99999):u;
cin»num;
if(num>9999)
place=5;
elseif(num>999)
place=4;
elseif(num>99)
place=3;
elseif(num>9)
place=2;
elseplace=l;
cout«nplace=,,«place«endl;
〃计算各位数字
ten_thousand=num/10000;
thousand=(int)(num-ten_thousand*10000)/1000;
hundred=(int)(num-ten_thousand*l0000-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«noriginalorder:
switch(place)
{case
5:cout«ten_thousand«H,"«thousand«,,;,«hundred«,,,"«ten«";,«indiv«en
dl;
cout«"reverseorder:n;
cout«indiv«ten«hundred«thousand«ten_thousand«endl;
break;
case4:cout«thousand«,,,''<<hundred«,,,,,«ten«*7,«indiv«endl;
cout«"reverseorder:";
cout«indiv«ten«hundred«thousand«endl;
break;
case3:cout«hundred«,,,',<<ten«",,,<<indiv«endl;
cout«"reverseorder:n;
cout«indiv«ten«hundred«endl;
break;
case2:cout«ten«H,"«indiv«endl;
cout«"reverseorder:";
cout«indiv«ten«endl;
break;
caseI:cout«indiv«endl;
cout«"reverseorder:H;
cout«indiv«endl;
break;
}
return0;
}
313题
#include<iostream>
usingnamespacestd;
intmain()
{longi;//i为利润
floatbonus,bon1,bon2,bon4,bon6,bon10;
bonl=100000*0.1;〃利润为10万元时的奖金
bon2=bon1+100000*0.075;//利润为20万元时的奖金
bon4=bon2+100000*0.05;〃利润为40万元时的奖金
bon6=bon4+100000*0.03;〃利润为60万元时的奖金
bonl0=bon6+400000*0.015;〃利润为100万元时的奖金
cout«"enteri:H;
cin»i;
if(i<=100000)
bonus=i*0.1;〃利润在10万元以内按10%提成奖金
elseif(i<=200000)
bonus=bon1+(i-l00000)*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万时的奖金
else
bonus=bon10+(i-1000000)*0.01;〃利润在100万元以上时的奖金
cout«nbonus=M«bonus«endl;
return0;
}
3.13题另解
#include<iostream>
usingnamespacestd;
intmain()
{longi;
floatbonus,bon1,bon2,bon4,bon6,bon10;
intc;
bonl=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
cout«nenteri:";
cin»i;
c=i/100000;
if(c>10)c=10;
switch(c)
{case0:bonus=i*0.1;break;
case1:bonus=bonl+(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«nbonus="«bonus«endl;
return0;
)
3.14题
#include<iostream>
usingnamespacestd;
intmain()
(intt,a,b,c,d;
cout«nenterfournumbers:H;
cin»a»b»c»d;
cout«na=n«a«n,b=H«b«H,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«nthesortedsequence:H«endl;
cout«a«H,H«b«M,H«c«n,n«d«endl;
return0;
)
3.15题
#include<iostream>
usingnamespacestd;
intmain()
{intp,r,n,m,temp;
cout«npleaseentertwopositiveintegernumbersn,m:,r
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«uHCF="«n«endl;
cout<<uLCD=n«p/n«endl;//p是原来两个整数的乘积
return0;
3.16题
#include<iostream>
usingnamespacestd;
intmain()
{charc;
intletters=0,space=0,digit=0,other=0;
cout«nenteroneline::H«endl;
while((c=getchar())!=,\n,)
{if(c>=fa'&&cv=N||c>=A&&c<='Z,)
letters-H-;
elseif(c=**)
space++;
elseif(c>=O&&c<=9)
digit++;
else
other++;
)
cout«,,letter:n«letters<<",space:n«space«n,digit:n«digit«H,
other:"«other«endl;
return0;
}
3.17题
#include<iostream>
usingnamespacestd;
intmain()
{inta,n,i=1,sn=0,tn=0;
cout«na,n=:H;
cin»a»n;
while(i<=n)
{tn=tn+a;〃赋值后的tn为i个a组成数的值
sn=sn+tn;〃赋值后的sn为多项式前i项之和
a=a*10;
++i;
cout«na+aa+aaa+...=,,«sn«endl;
return0;
)
3.18题
#include<iostream>
usingnamespacestd;
intmain()
{floats=0,t=l;
intn;
fbr(n=l;n<=20;n++)
(
t=t*n;〃求n!
s=s+t;//将各项累加
)
cout«H1!+2!+...+20!-,«s«endl;
return0;
)
3.19题
#include<iostream>
usingnamespacestd;
intmain()
{intij,k,n;
cout«Hnarcissusnumbersare:n«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«MM;
)
cout«endl;
return0;
}
3.20题
#include<iostream>
usingnamespacestd;
intmain()
(constintm=1000;//定义寻找范围
intkI,k2,k3,k4,k5,k6,k7,k8,k9,k10;
inti,a,n,s;
fbr(a=2;a<=m;a++)〃a是2-1000之间的整数,检查它是否为完数
{n=0;〃n用来累计a的因子的个数
s=a;〃s用来存放尚未求出的因子之和,开始时等于a
for(i=l;i<a;i++)//检查i是否为a的因子
if(a%i=0)//如果i是a的因子
{n++;〃11加1,表示新找到一个因子
s=s-i;〃s减去已找到的因子,s的新值是尚未求出的因子
之和
switch(n)//将找到的因子赋给kl,..”kl0
{case1:
kl=i;break;//找出的笫1个因子赋给kl
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:
kl0=i;break;//找出的笫10个因子赋给klO
}
if(s==O)//s=0表示全部因子都已找到了
{cout«a«"isa完数”vvendl;
cout«'*itsfactorsare:“;
if(n>l)cout«kl«",n«k2;//n>l表示a至少有2个因子
if(n>2)cout«H,"«k3;//n>2表示至少有3个因子,故应再输出一个因子
if(n>3)cout<v","vvk4;〃n>3表示至少有4个因子,故应再输出•个因子
if(n>4)coutvv”,”vvk5;//以下类似
if(n>5)cout«\"«k6;
if(n>6)cout«n,"«k7;
if(n>7)cout«H,n«k8;
if(n>8)cout«,,,,,«k9;
if(n>9)cout«M,M«klO;
cout«endl«endl;
return0;
}
3.20题另一解
#include<iostream>
usingnamespacestd;
intmain()
{intm,s,i;
for(m=2;m<1000;m-H4-)
{s=0;
for(i=l;i<m;i++)
if((m%i)==0)s=s+i;
if(s==m)
{cout«m«"isa完数”vvendl;
cout«nitsfactorsare:";
for(i=l;i<m;i++)
if(m%i==0)cout«i«nM;
cout«endl;
}
)
return0;
}
3.20题另一解
#include<iostream>
usingnamespacestd;
intmain()
{intk[ll];
inti,a,n,s;
for(a=2;a<=1000;a-H-)
{n=0;
s=a;
for(i=l;i<a;i++)
if((a%i)==0)
{n++;
s=s-i;
k[n]=i;//将找到的因子赋给k[l]—k[10]
)
if(s=0)
{cout«a«Misa完数”vvendl;
cout«"itsfactorsare:";
for(i=l;i<n;i++)
cout«k[i]«nH;
cout«k[n]«endl;
return0;
3.21题
#include<iostream>
usingnamespacestd;
intmain()
{inti,t,n=20;
doublea=2,b=l,s=0;
for(i=];iv=n;i++)
{s=s+a/b;
t=a;
a=a+b;//将前一项分子与分母之和作为下一项的分子
b=t;//将前一项的分子作为下一项的分母
}
cout«nsum=H«s«endl;
return0;
)
3.22题
#include<iostream>
usingnamespacestd;
intmain()
{intday,xl,x2;
day=9;
x2=l;
while(day>0)
{x1=(x2+1)*2;//第1天的桃子数是第2天桃子数加1后的2倍
x2=xl;
day—;
}
cout«ntotal=,,«x1«endl;
return0;
)
3.23题
#include<iostream>
#include<cmath>
usingnamespacestd;
intmain。
{floata,x0,xl;
cout«nenterapositivenumber:";
cin»a;//输入a的值
x0=a/2;
xl=(x0+a/x0)/2;
do
{xO=xl;
xl=(x0+a/x0)/2;
}
while(fabs(xO-xl)>=le-5);
cout«nThesquarerootofn«a«His"«xl«endl;
return0;
)
3.24题
#include<iostream>
usingnamespacestd;
intmain()
{inti,k;
for(i=0;i<=3;i-H-)//输出上面4行*号
{for(k=0;k<=2*i;k++)
cout«M*M;//输出*号
cout«endl;〃输出完一行*号后换行
)
for(i=0;i<=2;i-H-)//输出下面3行*号
{for(k=0;k<=4-2*i;k++)
cout«M*H;//输出*号
cout«endl;//输出完一行*号后换行
}
return0;
}
3.25题
#includev沁stream〉
usingnamespacestd;
intmain()
{chari,j,k;/*i是a的对手;j是b的对手;k是c的对手*/
for(i=,X,;i<=,Z,;i++)
for0=X;jv='Z;j")
if(i!=j)
for(k=,X,;k<='Z';k++)
if(i!=k&&j!=k)
if(i!=X&&k!='X'&&k!='Z')
cout«nA-n«i«HB-n<<j«HC-M«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«nH.C.F="«h«endl;
l=lcd(u,v,h);
cout«,,L.C.D=n«K<endl;
return0;
)
inthcfifintu,intv)
{intt,r;
if(v>u)
{t=u;u=v;v=t;}
while((r=u%v)!=O)
{u=v;
v=r;}
retum(v);
}
intlcd(intu,intv,inth)
{retum(u*v/h);
4.2题
#include<iostream>
#include<math.h>
usingnamespacestd;
floatxl,x2,disc,p,q;
intmain()
{voidgreater_than_zero(float,float);
voidequal_to_zero(float,float);
voidsmaller_than_zero(float,float);
floata,b,c;
cout«ninputa,b,c:";
cin»a»b»c;
disc=b*b-4*a*c;
cout«nroot:H«endl;
if(disc>0)
greater_than_zero(a,b);
cout«nx1=n«x1«,,,x2=,,«x2«endl;
}
elseif(disc==O)
{equal_to_zero(a,b);
cout«nxl=n«xK<n,x2=n«x2«endl;
}
else
{smaller_than_zero(a,b);
cout«,,xl=,'«p«n+,,«q«"i,,«endl;
cout«,,x2-,«p«,,-,,«q«"i"«endl;
}
return0;
)
voidgreater_than_zero(floata,floatb)/*定义-个函数,用来求disc>0时方
程的根*/
{xl=(-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«ninputaninteger:M;
cin»n;
if(prime(n))
cout«n«Hisaprime."«endl;
else
cout«n«Misnotaprime.u«endl;
return0;
|
intprime(intn)
{intflag=l,i;
for(i=2;i<n/2&&flag==l;i++)
if(n%i=0)
flag=0;
retum(flag);
)
4.4题
#include<iostream>
usingnamespacestd;
intmain()
{intfac(int);
inta,b,c,sum=0;
cout«nentera,b,c:M;
cin»a»b»c;
sum=sum+fac(a)+fac(b)+fac(c);
cout«a«M!+"«b«,,!+"«c«H!=,,«sum«endl;
return0;
}
intfac(intn)
{intf^l;
for(inti=l;i<=n;i++)
f=f*i;
returnf;
)
4.5题
#include<iostream>
#include<cmath>
usingnamespacestd;
intmain()
{doublee(double);
doublex,sinh;
cout«nenterx:H;
cin»x;
sinh=(e(x)+e(-x))/2;
cout«nsinh("«x«M)=H«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«ninputa,b,c,d:n;
cin»a»b»c»d;
cout«,,x-,«solut(a,b,c,d)«endl;
return0;
}
doublesolut(doublea,doubleb,doublec,doubled)
{doublex=l,x0,f,fl;
do
{x0=x;
f=((a*xO+b)*xO+c)*xO+d;
fl=(3*a*x0+2*b)*x0+c;
x=x0-f7fl;
}
while(fabs(x-xO)>=le-5);
retum(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«ninputn:";
cin»n;
godbaha(n);
return0;
)
voidgodbaha(intn)
{intprime(int);
inta,b;
fbr(a=3;a<=n/2;a=a+2)
{if(prime(a))
{b=n-a;
if(prime(b))
cout«n«n=M«a«**+n«b«endl;}
intprime(intm)
{inti,k=sqrt(m);
fbr(i=2;i<=k;i4-+)
if(m%i==0)break;
if(i>k)return1;
elsereturn0;
}
4.8题//递归法
#include<iostream>
usingnamespacestd;
intmain()
{intx,n;
floatp(int,int);
cout«ninputn&x:n;
cin»n»x;
cout«nn=n«n«H,x=M«x«endl;;
cout«uPH«n«H(x)=H«p(n,x)«endl;
return0;
}
floatp(intn,intx)
{if(n==0)
retum(l);
elseif(n==l)
retum(x);
else
retum(((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«ninputthenumberofdiskes:";
cin»m;
cout«nThestepsofmoving"«m«"disks:n«endl;
hanoi(m/A,,,B,;C,);
return0;
}
voidhanoi(intn,charone,chartwo,charthree)
〃将n个盘从one座借助two座,移到three座
{voidmove(charx,chary);
if{n==l)move(one,three);
else
{hanoi(n-1,one,three,two);
move(one,three);
hanoi(n-1,two,one,three);
}
}
voidmove(charx,chary)
{cout«x«n—>n«y«endl;}
4.10题
#include<iostream>
usingnamespacestd;
intmain()
{voidconvert(intn);
intnumber;
cout«ninputaninteger:";
cin»number;
cout«noutput:H«endl;
if(number<0)
{cout«H-H;
number=-number;
)
convert(number);
cout«endl;
return0;
)
voidconvert(intn)〃感觉根本想不出的么
{inti;
charc;
if((i=n/10)!=0)
convert(i);
c=n%10+'0';
cout«nH«c;
)
4.11题
#include<iostream>
usingnamespacestd;
intmain()
{intf(int);
intn,s;
cout«ninputthenumbern:";
cin»n;
s=f(n);
cout«nTheresultis"«s«endl;
return0;
}
intfifintn)
(;
if(n=l)
return1;
else
return(n*n+f(n-l));
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«ninputa,b,c:";
cin»a»b»c;
if(a+b>c&&a+c>b&&b+c>a)
cout«narea=M«AREA(a,b,c)«endl;
else
cout«nItisnotatriangle!n«endl;
return0;
)
4.14题
#include<iostream>
usingnamespacestd;
//#defineLETTER1
intmain()
{charc;
cin»c;
#ifLETTER
iRc>=n&&c<=,z,)
c=c-32;
#else
iRc>=A&&c<=Z)
c=c+32;
#endif
cout«c«endl;
return0;
)
4.15题
#include<iostream>
usingnamespacestd;
#defineCHANGE1
intmain()
{charch[40];
cout«ninputtext:**«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]+=l;
elseif(ch[i]=,z*||ch[i]=,Z,)
ch[i]-=25;
}
}
#endif
cout«noutput:n«endl«ch«endl;
return0;
}
4.16题file
#include<iostream>
usingnamespacestd;
inta;
intmain()
{externintpower(int);
intb=3,c,d,m;
cout«nenteranintegeraanditspowerm:u«endl;
cin»a»m;
c=a*b;
cout«a«H*n«b«H="«c«endl;
d=power(m);
cout«a«n**,,«m«*-"«d«endl;
return0;
}
416题file
externinta;
intpower(intn)
{inti,y=l;
fbr(i=l;i<=n;iH-4-)
y*=a;
returny;
5.1题
#include<iostream>
usingnamespacestd;
intmain()
{cout〈v2vv-;
for(inti=3;i<=100;i++)
{boolt=true;
fbr(inta=2;a<i;a++)if(i%a=0){t=false;break;}
if(t)cout«i«f
return0;
}
#include<iostream>
#include<iomanip>
usingnamespacestd;
#include<math.h>
intmain()
{inti,j,n,a[101];
for(i=l;i<=100;i++)
a[i]=i;
a[l]=O;
for(i=2;i<sqrt(100);i-»-+)
for(j=i+l;j<=100;j++)
{if(a[i]!=O&&a[j]!=O)
if(a[j]%a[i]=O)
aU]=O;}
cout«endl;
for(i=1,n=O;i<=1()0;i++)
{if(a[i]!=O)
{cout<<setw(5)«a[i]«M**;
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[l1];
cout«nenterdata:,,«endl;
fbr(i=l;i<=10;i++)
{cout«,,a[M«i«,,]=M;
cin»a[i];〃输入10个数
)
cout«endl«nTheoriginalnumbers:"«endl;;
fbr(i=1;i<=10;i-H-)
cout«a[i]«n//输出这10个数
cout«endl;;
fbr(i=l;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+l]〜a[10]中最小者与a[i]对换
a[i]=a[min];
a[min]=temp;
}
cout«endl«nThesortednumbers:"«endl;
for(i=l;i<=10;i++)〃输出已排好序的10个数
cout«a[i]«"M;
cout«endl;
return0;
}
#include<iostream>
usingnamespacestd;
intmain()
{inta[10],e,k,t;
for(inti=0;i<10;i++){cin»a[i];}
fbr(inti=0;i<9;i++){k=i;for(t=i+l;t<10;t+4-){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];
fbr(inti=0;i<10;i++){fbr(intt=0;t<10;t++)a[i][t]=0;}
fbr(inti=0;i<10;i++)a[i][i]=l;
for(inti=0;i<10;i++)a[i][0]=l;
fbr(inti=2;i<10;i++){fbr(intt=1;t<=i-1;t++)a[i][t]=a[i-1][t-1]+a[i-1][t];}
fbr(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;
intij;
cout«nenterdata:"«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«Hsum=M«sum«endl;
return0;
}
5.4题
#include<iostream>
usingnamespacestd;
intmain()
{inta[l1]={1,4,6,9,13,16,19,28,40,100};
intnum,ij;
cout«narraya:n«endl;
for(i=0;i<10;i++)
cout«a[i]«"**;
cout«endl;;
cout«ninsertdata:";
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+l]=a[j];
a[i]=num;
break;
cout«nNow,arraya:n«endl;
for(i=O;i<ll;i-H-)
cout«a[i]«n
cout«endl;
return0;
}
5.5题
#include<iostream>
usingnamespacestd;
intmain()
{constintn=5;
inta[n],i,temp;
cout«nenterarraya:"«endl;
fbr(i=0;i<n;i++)
cin»a[i];
cout«narraya:H«endl;
fbr(i=0;i<n;i4-+)
cout«a[i]«nn;
for(i=0;i<n/2;i++)〃循环的作用是将对称的元素的值互换
{temp=a[i];
a[i]=a[n-i-l];
a[n-i-l]=temp;
)
cout«endl«MNow,arraya:n«endl;
fbr(i=0;i<n;i4-+)
cout«a[i]«n
cout«endl;
return0;
)
5.6题
#include<iostream>
#include<iomanip>
usingnamespacestd;
intmain()
{constintn=ll;
inti,j,a[n][n];
fbr(i=l;i<n;i++)
{a[i][i]=l;
a[i][l]=l;
}
fbr(i=3;i<n;i++)
for(j=2;j<=i-l;j++)
a[i]U]=a[i-l]U-l]+a[i-l]U];
for(i=l;i<n;i-H-)
{fbr(j=l;j<=i;j-H-)
cout«setw(5)«a[i][j]«M
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;
fbr(i=0;i<n;i++)〃输入数组
for(j=O;j〈m;j++)
cin»a[i]|j];
fbr(i=0;i<n;i++)
{max=a[i][0];maxj=0;
for(j=0;j<m;j4-+)〃找出第i行中的最大数
if(a[i][j]>max)
{max=a[i][j];〃将本行的最大数存放在max中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024裁判员等级考试趋势试题及答案
- 如何制定合理的绩效考核机制计划
- 水务行业人才引进与激励措施计划
- 提升幼儿沟通技巧的活动设计计划
- 体育经纪人资格考试历年真题
- 游泳救生员职业素养试题及答案
- 2024年体育经纪人职业资格考试答题技巧试题及答案
- 扩展市场份额的详细方案计划
- 深入一线的裁判员考试策略与试题及答案
- 2025年青海西宁公务员录用考试《行测》模拟题及答案
- 科技论文写作课件(原创)
- 小学书法粤教版 五年级下册 集字练习
- 外研版(一起)二年级英语下册全册教案教学设计版
- 农村建房安全合同书参考
- 桥梁工程梁板的预制和安装监理实施细则
- 施工电梯租赁合同及安全协议
- 加油站临时用电专项方案
- MTBF测试验证规范文件和报告
- 2019第五版新版PFMEA 注塑实例
- (完整word版)计算机社团活动记录
- 水池满水试验记录表(自动计算)
评论
0/150
提交评论