同济大学C++前六章所有习题答案Word格式.docx

上传人:b****2 文档编号:4878813 上传时间:2023-05-04 格式:DOCX 页数:54 大小:557KB
下载 相关 举报
同济大学C++前六章所有习题答案Word格式.docx_第1页
第1页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第2页
第2页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第3页
第3页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第4页
第4页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第5页
第5页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第6页
第6页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第7页
第7页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第8页
第8页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第9页
第9页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第10页
第10页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第11页
第11页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第12页
第12页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第13页
第13页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第14页
第14页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第15页
第15页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第16页
第16页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第17页
第17页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第18页
第18页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第19页
第19页 / 共54页
同济大学C++前六章所有习题答案Word格式.docx_第20页
第20页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

同济大学C++前六章所有习题答案Word格式.docx

《同济大学C++前六章所有习题答案Word格式.docx》由会员分享,可在线阅读,更多相关《同济大学C++前六章所有习题答案Word格式.docx(54页珍藏版)》请在冰点文库上搜索。

同济大学C++前六章所有习题答案Word格式.docx

aver<

实验2.2

math.h"

doublex,y,z;

请输入直角三角形的两直角边长:

y;

z=sqrt(x*x+y*y);

该直角三角形的斜边长为:

z<

实验2.4

doublea,b,c,t,ave;

cout<

请输入三个数"

cin>

a>

b>

c;

if(a<

b)

t=a;

else

t=b;

if(t<

c)

t=t;

t=c;

ave=(a+b+c)/3;

三个数的平均值为"

ave<

,其中最小的数为:

t<

实验2.3

doublex,y,r,t;

请输入xy"

r=x*x+y*y;

if(r<

=16&

&

r>

=4)

t=12*3.1415926;

t=0;

实验2.5

charc1='

f'

c2='

l'

c3='

y'

;

c1<

c2<

c3<

c1=c1+3;

c2=c2+3;

c3=c3+3;

if(c1>

'

z'

c1=c1-26;

if(c2>

c2=c2-26;

if(c3>

c3=c3-26;

实验3.1

intx,y;

floatr1,r2;

if(x==0||y==0)

inputerror"

else

{

if(x>

y)

r1=x/y;

r2=x%y;

}

r1=y/x;

r2=y%x;

商="

r1<

余数="

r2<

实验3.2

请输入上网时间x:

=65)

y=130;

elseif(x>

=50)

y=x*2;

=10)

y=x*2.5;

y=30;

上网费用y为:

实验3.3

floatx,y1,y2;

intxp;

=3000)

y1=0.7*x;

=2000)

y1=0.8*x;

=1000)

y1=0.9*x;

y1=x;

xp=(int)x/1000

switch(xp)

case

实验3.5

doublex,y,a;

charz;

请输入您要计算的式子"

z>

if(z==42)

a=x*y;

cout<

x<

×

='

a<

elseif(z==43)

a=x+y;

+"

elseif(z==45)

a=x-y;

-"

elseif(z==47)

a=x/y;

÷

你输入了非法的运算符。

图太多,不截了。

实验3.6

inta,b,c;

doublex1,x2;

请输入一元二次方程的系数a、b、c:

if((b*b-4*a*c)>

0)

x1=(-b+sqrt(b*b-4*a*c))/(2*a);

x2=(-b-sqrt(b*b-4*a*c))/(2*a);

方程的解为:

x1="

x1<

x2="

x2<

elseif((b*b-4*a*c)==0)

x1=x2=(-b)/(2*a);

=x2="

方程无解"

实验4.1

intn,sum(0);

for(n=1;

;

n+=2)

sum=sum+n;

if(n==19)break;

sum="

sum<

实验4.6

inti,j,k;

for(i=0;

i<

=9;

i++)

for(j=0;

j<

j++)

for(k=0;

k<

k++)

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k&

i*100+j*10+k>

100)

cout<

实验4.9

doublex1,x0,x;

inta;

请输入a:

a;

x1=a;

do

x0=x1;

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

while(fabs(x1-x0)>

1.0e-5);

用迭代法算出a的立方根x为:

x=a;

x=pow(x,1/3.0);

用pow(x,1/3)公式算出a的立方根x为:

实验4.2

inta,b,c,d,e,f;

请输入要逆序的数:

b=a/1000;

c=a%1000/100;

d=a%100/10;

e=a%10;

if(b==0&

c!

=0)

f=100*e+10*d+c;

elseif(c==0&

d!

f=10*e+d;

elseif(d==0&

e!

f=e;

f=1000*e+100*d+10*c+b;

if(b>

9)

你输入的数太大,请重新输入;

else

所求得的逆序数为:

f<

实验4.3

inti;

doubles(0),t

(1);

for(i=0;

(1.0/t)>

0.0001;

t+=i;

s+=(1/t);

实验4.4

intn;

doubles=2,a,i;

请输入n值:

n;

for(i=1;

a=((2*i)*(2*i))/((2*i-1)*(2*i+1));

s=s*a;

}cout<

实验4.5

inti,j;

10;

setw(11-i);

for(j=0;

2*i-1;

j++)cout<

i;

charc;

9;

c=i+'

A'

setw(i+2);

2*(9-i);

cout<

实验4.7

inti,j,k,t=0;

5;

for(j=i+1;

6;

{

for(k=5;

7;

{

if(j<

k)

{

cout<

"

t++;

}

}

}

满足条件的方案数为:

实验4.8

stdlib.h"

stdio.h"

time.h"

inti,a,n,temp,s=0;

srand((unsigned)time(NULL));

a=rand()%9+1;

n=rand()%6+5;

temp=0;

=n;

temp=temp*10+a;

s+=temp;

n<

不要问我为什么这么写随机函数,我也不知道为什么,我是上网找了一个很高级很高级的产生随机函数的方法,然后套进来的。

实验5.1

inta[10],i,min,max;

doubleave=0;

a[i]=int(rand()%71+30);

for(i=1,min=a[0];

if(min>

a[i])min=a[i];

for(i=1,max=a[0];

if(max<

a[i])max=a[i];

a[i]<

ave+=a[i];

ave=ave/10;

最大值为:

max<

最小值为:

min<

平均值为:

ave;

实验5.8

string.h"

chara[80],b[80];

gets(a);

*(a+i)!

\0'

if(a[i]<

&

a[i]>

a'

b[i]=a[i]-32;

else

b[i]=a[i];

b[i]='

*(b+i)!

b[i];

用strupr函数求得:

strupr(a)<

实验5.2

voidmain()

inti,j,t,s[20];

20;

i++)s[i]=rand()%100+1;

19;

t=s[i];

if(s[j]>

t)

s[i]=s[j];

s[j]=t;

t=s[i];

i++)cout<

s[i]<

实验5.3

inti,s1[10],s2[10],m;

s1[i]=rand()%100+1;

移动前数据"

s1[i]<

endl<

输入右移位数"

m;

if(i+m<

10)

s2[i+m]=s1[i];

s2[i+m-10]=s1[i];

右移"

m<

位后数据"

s2[i]<

实验5.4

这是我迄今为止做过的最麻烦的一道题

//建立A、B矩阵:

inti,j,k,s1[4][4],s2[4][4],s3[4][4],s4[4][4],s5[4][4],t[3];

4;

s1[i][j]=rand()%41+30;

矩阵A为:

setw(6)<

s1[i][j];

s2[i][j]=rand()%35+101;

矩阵B为:

s2[i][j];

s3[i][j]=s1[i][j]+s2[i][j];

//拷贝一下矩阵A,方便做第四问:

s4[i][j]=s1[i][j];

s5[i][j]=s1[i][j];

//第一问:

矩阵C为:

s3[i][j];

//第二问:

t[0]=s3[0][0];

if(s3[i][j]>

t[0])

t[1]=i;

t[2]=j;

t[0]=s3[i][j];

C矩阵中最大值为:

t[0]<

其下标为"

("

t[1]<

"

t[2]<

)"

//第三问之A的下三角:

3;

for(k=0;

s1[j][k]=s1[j][k]-s1[i][k]/s1[i][i]*s1[j][i];

以下三角显示矩阵A得:

//第三问之B的上三角:

for(i=3;

i>

0;

i--)

for(j=i-1;

j>

=0;

j--)

s2[j][k]=s2[j][k]-s2[i][k]/s2[i][i]*s2[j][i];

以下三角显示矩阵B得:

//第四问:

t[0]=s4[0][i];

s4[0][i]=s4[2][i];

s4[2][i]=t[0];

1、3行互换后A矩阵得:

s4[i][j];

//第五问:

t[1]=0;

t[2]=0;

t[1]+=s5[i][i];

t[2]+=s5[3-i][3-i];

t[0]=t[1]+t[2];

两对角线之和为:

实验5.5

intn,i,j,a[10][10];

a[i][j]=1;

输入行数n:

for(i=2;

for(j=1;

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

i+1;

setw(5)<

a[i][j];

n-i;

实验5.6

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

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

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2