c++基础习题 附答案文档格式.docx

上传人:b****6 文档编号:19906015 上传时间:2023-01-12 格式:DOCX 页数:20 大小:27.22KB
下载 相关 举报
c++基础习题 附答案文档格式.docx_第1页
第1页 / 共20页
c++基础习题 附答案文档格式.docx_第2页
第2页 / 共20页
c++基础习题 附答案文档格式.docx_第3页
第3页 / 共20页
c++基础习题 附答案文档格式.docx_第4页
第4页 / 共20页
c++基础习题 附答案文档格式.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

c++基础习题 附答案文档格式.docx

《c++基础习题 附答案文档格式.docx》由会员分享,可在线阅读,更多相关《c++基础习题 附答案文档格式.docx(20页珍藏版)》请在冰豆网上搜索。

c++基础习题 附答案文档格式.docx

121

1331

...

#include<

iostream>

usingnamespacestd;

intmain()

{inti=1,sum=0;

do{sum=sum+i;

i++;

}

while(i<

=100);

cout<

<

“sum=”<

sum<

endl;

ruture0;

2

intmain()

{charc;

while((c=getchar())!

=‘\n’)

{if((c>

=’a’&

&

c<

=’z’)||(c>

=’A’&

=’Z’))

{c=c+4;

if(c>

’Z’&

c<

=’Z’+4||c>

’z’)c=c-26;

}

c;

endl;

return0;

3

intmain()

{charc;

intletters=0,space=0,digit=0,other=0;

cout<

"

enteroneline:

:

while((c=getchar())!

='

\n'

{if(c>

a'

&

z'

||c>

A'

Z'

letters++;

elseif(c=='

'

space++;

elseif(c>

0'

9'

digit++;

else

other++;

letter:

letters<

space:

space<

digit:

digit<

other:

other<

return0;

}

4

{inta,n,i=1,sn=0,tn=0;

a,n=:

;

cin>

>

a>

n;

while(i<

=n)

{tn=tn+a;

//赋值后的tn为i个a组成数的值

sn=sn+tn;

//赋值后的sn为多项式前i项之和

a=a*10;

++i;

a+aa+aaa+...="

sn<

5

{floats=0,t=1;

intn;

for(n=1;

n<

=20;

n++)

{

t=t*n;

//求n!

s=s+t;

//将各项累加

1!

+2!

+...+20!

="

s<

6

{inti,j,k,n;

narcissusnumbersare:

for(n=100;

1000;

{i=n/100;

j=n/10-i*10;

k=n%10;

if(n==i*i*i+j*j*j+k*k*k)

"

7

{intm,s,i;

for(m=2;

m<

m++)

{s=0;

for(i=1;

i<

m;

i++)

if((m%i)==0)s=s+i;

if(s==m)

{cout<

isa完数"

itsfactorsare:

if(m%i==0)cout<

8

{inti,t,n=20;

doublea=2,b=1,s=0;

=n;

{s=s+a/b;

t=a;

a=a+b;

//将前一项分子与分母之和作为下一项的分子

b=t;

//将前一项的分子作为下一项的分母

sum="

9

{intday,x1,x2;

day=9;

x2=1;

while(day>

0)

{x1=(x2+1)*2;

//第1天的桃子数是第2天桃子数加1后的2倍

x2=x1;

day--;

total="

x1<

10

cmath>

{floata,x0,x1;

enterapositivenumber:

a;

//输入a的值

x0=a/2;

x1=(x0+a/x0)/2;

do

{x0=x1;

while(fabs(x0-x1)>

=1e-5);

Thesquarerootof"

a<

is"

11

{inti,k;

for(i=0;

=3;

i++)//输出上面4行*号

{for(k=0;

k<

=2*i;

k++)

*"

//输出*号

//输出完一行*号后换行

=2;

i++)//输出下面3行*号

=4-2*i;

//输出完一行*号后换行

12

longfac(int);

//函数声明

intmain()

//n为需要求阶乘的整数

longy;

//y为存放n!

的变量

″pleaseinputaninteger:

″;

//输入的提示

//输入n

y=fac(n);

//调用fac函数以求n!

″!

=″<

y<

//输出n!

的值

longfac(intn)//递归函数

{

longf;

if(n<

″n<

0,dataerror!

″<

//如果输入负数,报错并以-1作为返回值

f=-1;

elseif(n==0||n==1)f=1;

//0!

和1!

的值为1

elsef=fac(n-1)*n;

//n>

1时,进行递归调用

returnf;

//将f的值作为函数值返回

13

{inthcf(int,int);

intlcd(int,int,int);

intu,v,h,l;

u>

v;

h=hcf(u,v);

H.C.F="

h<

l=lcd(u,v,h);

L.C.D="

l<

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);

14

math.h>

floatx1,x2,disc,p,q;

{voidgreater_than_zero(float,float);

voidequal_to_zero(float,float);

voidsmaller_than_zero(float,float);

floata,b,c;

inputa,b,c:

b>

disc=b*b-4*a*c;

root:

if(disc>

greater_than_zero(a,b);

x1="

x2="

x2<

elseif(disc==0)

{equal_to_zero(a,b);

{smaller_than_zero(a,b);

p<

+"

q<

i"

x2="

-"

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<

p=-b/(2*a);

q=sqrt(-disc)/(2*a);

15

{intprime(int);

/*函数原型声明*/

inputaninteger:

if(prime(n))

isaprime."

isnotaprime."

intprime(intn)

{intflag=1,i;

for(i=2;

n/2&

flag==1;

if(n%i==0)

flag=0;

return(flag);

16

{intfac(int);

inta,b,c,sum=0;

entera,b,c:

sum=sum+fac(a)+fac(b)+fac(c);

!

b<

intfac(intn)

{intf=1;

for(inti=1;

f=f*i;

17

{voidgodbaha(int);

inputn:

godbaha(n);

voidgodbaha(intn)

{intprime(int);

inta,b;

for(a=3;

=n/2;

a=a+2)

{if(prime(a))

{b=n-a;

if(prime(b))

cout<

intprime(intm)

{inti,k=sqrt(m);

for(i=2;

=k;

if(m%i==0)break;

if(i>

k)return1;

elsereturn0;

18

{intf(int);

intn,s;

inputthenumbern:

s=f(n);

Theresultis"

}

intf(intn)

{;

if(n==1)

return1;

return(n*n+f(n-1));

19

#include<

iomanip>

{inti;

intf[20]={1,1};

20;

f[i]=f[i-2]+f[i-1];

for(i=0;

{if(i%5==0)cout<

cout<

setw(8)<

f[i];

20

{inta[10];

inti,j,t;

”input10numbers:

”<

for(i=0;

j<

9;

j++)

if(a[i]>

a[i+1])

{t=a[i];

a[i]=a[i+1];

a[i+1]=t;

”thesortednumbers:

10;

a[i]<

””;

21

inta[2][3]={{1,2,3},{4,5,6}};

intb[3][2],I,j;

“arraya:

”<

endl;

for(j+0;

{cout<

a[i][j]<

”“;

22

{inti,j,row=0,colum=0,max;

inta[3][4]={{5,12,23,56,},{19,28,37,46},{-12,-34,6,8}};

max=a[0][0];

for(j=0;

if(a[i][j]>

max)

{max=a[i][j];

row=i;

colum=j;

”max=”<

max<

”,row=“<

row<

”,colum=”<

colum<

23

{voidselet_sort(intarray[],intn);

inta[10],i;

”entertheoriginlarray:

for(i=0;

a[i];

cout<

selet_sort(a,10);

“thesortedarray:

endl:

voidselet_sort(intarray[],intn)

{inti,j,k;

fot(i=0;

n-1;

{k=i;

for(j=i+1;

if(array[j]<

array[k])k=j;

t=array[k];

array[k]=array[i];

array[i]=t;

24

//#include<

{inti,j,min,temp,a[11];

enterdata:

=10;

a["

]="

//输入10个数

endl<

Theoriginalnumbers:

//输出这10个数

=9;

i++)//以下8行是对10个数排序

{min=i;

for(j=i+1;

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;

Thesortednumbers:

i++)//输出已排好序的10个数

25

{inta[3][3],sum=0;

inti,j;

3;

for(j=0;

a[i][j];

sum=sum+a[i][i];

26

{constintn=11;

inti,j,a[n][n];

{a[i][i]=1;

a[i][1]=1;

for(i=3;

for(j=2;

=i-1;

a[i][j]=a[i-1][j-1]+a[i-1][j];

{for(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1