C++与数据结构基础简明教程课后习题答案.docx

上传人:b****6 文档编号:7912638 上传时间:2023-01-27 格式:DOCX 页数:46 大小:23KB
下载 相关 举报
C++与数据结构基础简明教程课后习题答案.docx_第1页
第1页 / 共46页
C++与数据结构基础简明教程课后习题答案.docx_第2页
第2页 / 共46页
C++与数据结构基础简明教程课后习题答案.docx_第3页
第3页 / 共46页
C++与数据结构基础简明教程课后习题答案.docx_第4页
第4页 / 共46页
C++与数据结构基础简明教程课后习题答案.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

C++与数据结构基础简明教程课后习题答案.docx

《C++与数据结构基础简明教程课后习题答案.docx》由会员分享,可在线阅读,更多相关《C++与数据结构基础简明教程课后习题答案.docx(46页珍藏版)》请在冰豆网上搜索。

C++与数据结构基础简明教程课后习题答案.docx

C++与数据结构基础简明教程课后习题答案

C++与数据结构基础简明教程课后习题答案

 

1-7-1

//输出一个数的10倍

#include

usingnamespacestd;

intmain()

{

        cout<<"Pleaseinputaninterger:

\n";

        inta;

        cin>>a;

        cout<<"result="<

        return0;

}

1-7-2

//输出两个数中的较小的

#include

usingnamespacestd;

intmain()

{

        doublex,y,min;

        cout<<"pleaseinputtwonumbers"<

        cin>>x>>y;

        min=(x>y?

y:

x);

        cout<<"thesmalleris"<<''<

        return0;

}

1-7-3

//输入半径计算周长和面积

#include

usingnamespacestd;

intmain()

{

        cout<<"请输入半径\n";

        doublerad;

        cin>>rad;

        doublec,s;

        c=2*3.14*rad;

        s=3.14*rad*rad;

        cout<<"周长是"<

        cout<<"面积是"<

        return0;

}

1-7-4

//将10000秒化成小时分钟秒

#include

usingnamespacestd;

intmain()

{

        inthour,min,second;

        hour=10000/3600;

        min=(10000%3600)/60;

        second=10000-hour*3600-60*min;

        cout<

        return0;

}

1-7-5

//将一个三位数倒叙输出

#include

usingnamespacestd;

intmain()

{

intnum,num_bai,num_shi,num_ge;

cout<<"请输入一个三位数";

cin>>num;

num_bai=num/100;

num_shi=(num-num_bai*100)/10;

num_ge=num-num_bai*100-num_shi*10;

cout<

cout<

cout<

return0;

}

2-3

//简单的输入输出

#include

usingnamespacestd;

intmain()

{

        doubley,n;

        cout<<"pleaseinputanumber\n";

        cin>>n;

        if(n>0)y=n+1;

        if(n<0)y=n*n;

        if(n==0)y=0;

        cout<<"theresultis:

"<<''<

        return0;

}

2-4

//输出学生学号和对应的成绩等级

#include

usingnamespacestd;

intmain()

{

        doublefenshu;

        intxuehao;

        chardengji;

        inti;

        for(i=1;i<=10;i++)

        {

                  onerror:

cout<<"pleaseinputstudentscore\n";

                  cin>>fenshu;

                  if(fenshu>=90&&fenshu<=100)dengji='A';

                  if(fenshu>=80&&fenshu<90)dengji='B';

                  if(fenshu>=600&&fenshu<80)dengji='C';

                  if(fenshu>=0&&fenshu<60)dengji='D';

                  if(fenshu<0)

                  {

                           cout<<"error";

                           gotoonerror;

                  }

                  if(fenshu>100)

                  {

                           cout<<"error";

                           gotoonerror;

                  }

                  cout<<"theidis"<

                  cout<<"thescoreis"<

        }

        return0;

}

2-5

//判断输入字符类别

#include

usingnamespacestd;

intmain()

{

charzifu;

intascii;

cout<<"pleaseinputacharacteristic\n";

cin>>zifu;

ascii=zifu;

if(ascii>=48&&ascii<=57)

        {

        cout<<"数字\n";

        gotoend;

        }

if(ascii>=97&&ascii<=122)

        {

        cout<<"小写字母\n";

        gotoend;

        }

if(ascii>=65&&ascii<=90)

        {

        cout<<"大写字母\n";

        gotoend;

        }

cout<<"其他字符";

cout<

end:

return0;

}

2-6

//求圆周率的近似值

#include

#include

usingnamespacestd;

intmain()

{

intxishu=-1;

doubledanshu=1.0;

inti=1;

doublesifenzhipi=0;

do

{

        xishu=xishu*(-1);

        danshu=1.0/(2*i-1);

        sifenzhipi=sifenzhipi+xishu*danshu;

        i++;

}

while(danshu>=0.000001);

cout<

return0;

}

2-7

//输出斐波那契数列前40个数,以8*5的格式输出

#include

#include

usingnamespacestd;

intmain()

{

 

 

        intb=2;

        intfeibo1=0;

        intfeibo2=1;

        cout<

        for(inti=1;i<=38;i++)

        {

                  inta=feibo2;

                  feibo2=feibo1+feibo2;

                  feibo1=a;

                  cout<

                  b=b+1;

                  if(b%8==0)cout<

        }

        return0;

}

2-8

//统计输入的元音字母个数

#include

usingnamespacestd;

intmain()

{

        charzimu;

        inta,e,i,o,u;

        a=e=u=i=o=0;

        begin:

cin>>zimu;

        switch(zimu)

        {

        case'a':

a++;break;

        case'e':

e++;break;

        case'i':

i++;break;

        case'o':

o++;break;

        case'u':

u++;break;

        case'#':

gotoend;

        }

        gotobegin;

end:

cout<

        return0;

}

2-10

//计算5!

+6!

+7!

#include

usingnamespacestd;

intmain()

{

        inti,j;

        intsum=0;

        for(i=5;i<=7;i++)

        {

        intjiecheng=1;

        for(j=1;j<=i;j++)jiecheng=jiecheng*j;

        sum=sum+jiecheng;

        }

        cout<

        return0;

}

2-11

//从2开始100个素数

#include

usingnamespacestd;

intmain()

{

        intnum=1;

        intsushu=0;

        start:

;

        num++;

        for(inti=2;i<=num;i++)

        {

                  if(num%i==0)break;

        }

        if(i==num)

        {

                  cout<

                  sushu+=1;

        }

        if(sushu!

=100)gotostart;

        return0;

}

2-12

//百钱买百鸡问题

#include

usingnamespacestd;

intmain()

{

        intx,y,z;

        for(x=0;x<=100;x++)

        {

                  for(y=0;y<=100;y++)

                  {

                           for(z=0;z<=100;z++)

                                    if(x+y+z==100&&5*x+3*y+z/3==100&&z%3==0)cout<

                  }

        }

return0;

}

2-13

#include

usingnamespacestd;

intmain()

{

        

        inta,b,c,d,e;

        c=0;

        cin>>a;

        cout<<"输入"<

        b=1;

        e=a*a*a;

        while(c!

=e)

        {

                  d=b;

                  c=0;

        for(inti=1;i<=a;i++)

        {

                  

                  c=c+d;

                  d=d+2;

        }

        b=b+2;

        }

        //cout<

        intf=b-4;

        for(intj=1;j<=a;j++)

        {

                  f=f+2;

                  cout<

        }

        cout<<"的和\n";

        return0;

}

2-14

//输出四方*形状

#include

usingnamespacestd;

intmain()

{

        inti,j;

        for(i=1;i<=9;i++)

        {

                  j=1;

                  for(j=1;j<=9;j++)

                  {

                           if(i+j>=6&&i+j<=14&&j-i<=4&&i-j<=4)cout<<'*';

                           elsecout<<'';

                  }

        cout<

        }

        return0;

}

3-1-1

//向数组a中输入10个整数,求其中的最大值,最小值和10个数的算术平均值

#include

usingnamespacestd;

intmain()

{

        inta[10];

        for(inti=0;i<=9;i++)

                  cin>>a[i];

        intmax=a[0],min=a[0],sum=a[0];

        for(intj=0;j<=9;j++)

        {

                  sum=sum+a[j];

                  max=(max>a[j]?

max:

a[j]);

                  min=(min

min:

a[j]);

        }

        doubleave=sum/10.00;

        cout<

        return0;

 

}

3-1-2

#include

usingnamespacestd;

intmain()

{

        intscore[10];

        intsum=0,a=0,b=0;

        for(inti=0;i<=9;i++)

        {

                  cin>>score[i];

                  sum=sum+score[i];

        }

        doubleave=sum/10.0;

        for(intj=0;j<=9;j++)

        {

                  if(score[j]>ave)a++;

                  if(score[j]<60)b++;

        }

        cout<<"成绩大于平均值的人数是"<

        return0;

}

3-3-1

#include

usingnamespacestd;

intmain()

{

        inta[10],sum=0,min,max;

        doubleave;

        int*ptoa=a;

        for(inti=0;i<=9;i++)

        {

                  cin>>*(a+i);

                  sum+=*(a+i);

        }

        min=*(a);

        max=*(a);

        for(intj=1;j<=9;j++)

        {

                  min=(min<*(a+j)?

min:

*(a+j));

                  max=(max>*(a+j)?

max:

*(a+j));

        }

        cout<

        ave=sum/10.0;

        cout<

        return0;

}

3-3-2

#include

usingnamespacestd;

intmain()

{

        inta[10],sum=0,j=0,c=0;                       //定义数组a,sum是各学生成绩之和,j是小于60的个数,c是大于平均值的个数

        doubleave=0;                    //定义平均值

        int*ptoa=a;                        //使用指针

        for(inti=0;i<=9;i++)                    //输入并算和,统计小于60的

        {

                  cin>>*(ptoa+i);

                  sum+=*(ptoa+i);

                  if(*(ptoa+i)<60)

                  {

                           j++;

                  }

        }

        ave=sum/10.0;                    //计算平均值

        //cout<

        for(intk=0;k<=9;k++)                  //计算大于平均值的

        {

                  if(*(ptoa+k)>ave)

                  {

                           c++;

                  }

        }

        cout<

        return0;

}

3-3-3

#include

usingnamespacestd;

intmain()

{

        charstring[100];

        cin>>string;

        inti=0,an=0,in=0;

        cout<<"您输入的字符串";

        while(string[i]!

='\0')

        {

                  if(string[i]=='a')an++;

                  if(string[i]=='i')in++;

                  cout<

                  i++;

        }

        cout<

        return0;

}

3-3-3a

#include

usingnamespacestd;

intmain()

{

        chara[10

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

当前位置:首页 > 经管营销 > 经济市场

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

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