第一章 习题答案
1.5
cout<<"Enter two numbers";
cin>>a>>b;
c=a*b;
cout<<"a*b="<<c;
1.7
#include <iostream.h>
void main()
{float a,b,c;
cout<<"请任意输入三个数:";
cin>>a>>b>>c;
cout<<endl<<"其和为:"<<a+b+c;
cout<<endl<<"其平均值为:"<<(a+b+c)/3;
cout<<endl<<"其积为:"<<a*b*c;
cout<<endl<<"最小值为:";
if (a<b)
if (a<c)
cout<<a;
else
cout<<c;
else
if (b<c)
cout<<b;
else
cout<<c;
cout<<endl<<"最大值为:";
if (a>b)
if (a>c)
cout<<a;
else
cout<<c;
else
if (b>c)
cout<<b;
else
cout<<c;
cout<<endl;
}
1.8
#include <iostream.h>
void main()
{float a,b,c;
cout<<"请任意输入一个三角形的三边长";
cin>>a>>b>>c;
if ((a+b>c) && (b+c>a) &&(a+c>b))
cout<<endl<<"三角形的周长为:"<<a+b+c<<endl;
else
cout<<endl<<"此三边不能构成一个三角形"<<endl;
}
3.8
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
void main()
{
printf("%-15d",40000); //(1)方法一
cout<<setiosflags(ios::left)<<setw(15)<<40000; //(1)方法二
char state[20];
cin>>state; //(方法一)
scanf("%s",state); //(方法二)
gets(state); //(方法三)
printf("%d%u",200,200); //(3)
printf("%#x",100); //(4)
printf("%09.3f",1.234); //(6)方法一
cout<<setfill('0')<<setw(9)<<setprecision(4)<<1.234; //(6)方法二
char s[50];
cin>>s; //(7)
}
3.10
#include <stdio.h>
void main( )
{
int a,b,c;
scanf("%d%o%x",&a,&b,&c);
printf("%d\n%#o\n%#x\n",a,b,c);
}
3.11
#include <stdio.h>
void main( )
{
printf("%1d,%1f\n",12345,1.2345);
printf("%3d,%3f\n",12345,1.2345);
printf("%5d,%5f\n",12345,1.2345);
printf("%6d,%6f\n",12345,1.2345);
printf("%7d,%7f\n",12345,1.2345);
printf("%10d,%10f\n",12345,1.2345);
}
3.12
#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
void main( )
{const double x=100.453627;
//方法一:
printf("方法一:\n%10.0f\n%10.1f\n%10.2f\n%10.3f\n%10.4f\n",x,x,x,x,x);
//方法二:
cout<<"方法二:\n";
cout<<setprecision(3)<<x<<endl
<<setprecision(4)<<x<<endl
<<setprecision(5)<<x<<endl
<<setprecision(6)<<x<<endl
<<setprecision(7)<<x<<endl;
}
3.17
#include <iostream.h>
void main( )
{int a,b,c;
cout<<"请输入第一个数:";
cin>>a;
cout<<"请输入第2个数:";
cin>>b;
cout<<"请输入这两个数相加的和:";
cin>>c;
if(c==a+b)
cout<<"恭喜你,答对了!"<<endl;
else
cout<<"很不幸,你答错了!正确的答案为:"<<a+b<<endl;
}
4.13
#include <iostream.h>
void main( )
{float a,b,c;
cout<<"请输入三角形的第一边:";
cin>>a;
cout<<"请输入三角形的第二边:";
cin>>b;
cout<<"请输入三角形的第三边:";
cin>>c;
if (a+b>c&&a+c>b&&b+c>a)
cout<<"这三边可以构成一个三角形!\n";
else
cout<<"这三边不能构成一个三角形!\n";
}
4.18
方法一:
#include <iostream.h>
void main( )
{int score;
cout<<"请输入百分制成绩(1-100):";
cin>>score;
if (score>100||score<0)
cout<<"输入的成绩为非法数据!\n";
else if (score>=90)
cout<<"五分制成绩为A\n";
else if (score>=80)
cout<<"五分制成绩为B\n";
else if (score>=70)
cout<<"五分制成绩为C\n";
else if (score>=60)
cout<<"五分制成绩为D\n";
printf怎么加endl else
cout<<"五分制成绩为E\n";
}
方法二:
#include <iostream.h>
void main( )
{int score,kk=20;
cout<<"请输入百分制成绩(1-100):";
cin>>score;
if (score<0 ||score>100)
{cout<<"输入的成绩为非法数据!\n";
return;
}
kk=score/10;
switch (kk)
{
case 10:
case 9:cout<<"五分制成绩为A\n";break;
case 8:cout<<"五分制成绩为B\n";break;
case 7:cout<<"五分制成绩为C\n";break;
case 6:cout<<"五分制成绩为D\n";break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:cout<<"五分制成绩为E\n";break;
}
}
4.22
方法一:
#include <iostream.h>
#include <math.h>
void main( )
{int a,b,c,i;
cout<<"水仙花数有:\n";
for (i=100;i<=999;i++)
{
a=i/100;
b=(i-a*100)/10;
c=i-a*100-b*10;
if (i==pow(a,3)+pow(b,3)+pow(c,3))//if(i==a*a*a+b*b*b+c*c*c)
cout<<i<<endl;
}
}
方法二:
#include <iostream.h>
#include <math.h>
void main( )
{int a,b,c;
cout<<"水仙花数有:\n";
for (a=1;a<=9;a++) 6
for (b=0;b<=9;b++)10
for (c=0;c<=9;c++) 0-9
if (a*100+b*10+c==pow(a,3)+pow(b,3)+pow(c,3))
cout<<a*100+b*10+c<<endl;
}
4.27(1)
#include <iostream.h>
void main( )
{int i,j;
for (i=1;i<=10;i++)
{for (j=1;j<=i;j++) cout<<"*";
cout<<endl;
}
}
4.27(2)
方法一:
#include <iostream.h>
#include <iomanip.h>
void main( )
{int i,j;
for (i=1;i<=10;i++)
{cout<<setw(i)<<" ";
for (j=1;j<=11-i;j++) cout<<"*";
cout<<endl;
}
}
方法二:
#include <iostream.h>
void main( )
{int i,j;
for (i=1;i<=10;i++)
{ for (j=1;j<=i;j++) cout<<" ";
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论