谭浩强c++程序设计课后答案
娄警卫
第一章
1.5题
#include <iostream>
using namespace std;
int main()
{
cout<<"This"<<"is";
cout<<"a"<<"C++";
cout<<"program.";
return 0;
1.6题
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
a=10;
b=23;
c=a+b;
cout<<"a+b=";
cout<<c;
cout<<endl;
return 0;
}
1.7七题
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
int f(int x,int y,int z);
cin>>a>>b>>c;
c=f(a,b,c);
cout<<c<<endl;
return 0;
}
int f(int x,int y,int z)
{
int m;
if (x<y) m=x;
  else m=y;
if (z<m) m=z;
  return(m);             
}
1.8题
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b;
c=a+b;
cout<<"a+b="<<a+b<<endl;
return 0;
}
1.9题
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
int add(int x,int y);
cin>>a>>b;
c=add(a,b);
cout<<"a+b="<<c<<endl;
return 0;
}
int add(int x,int y)
{int z;
z=x+y;
return(z);
}
第二章
2.3题
#include <iostream>
using namespace std;
int main()
{char c1='a',c2='b',c3='c',c4='\101',c5='\116';
  cout<<c1<<c2<<c3<<'\n';
  cout<<"\t\b"<<c4<<'\t'<<c5<<'\n';
  return 0;
}
2.4题
#include <iostream>
using namespace std;
int main()
{char c1='C',c2='+',c3='+';
  cout<<"I say: \""<<c1<<c2<<c3<<'\"';
  cout<<"\t\t"<<"He says: \"C++ is very interesting!\""<< '\n';
  return 0;
}
2.7题
#include <iostream>
using namespace std;
int main()
{int  i,j,m,n;
i=8;
j=10;
m=++i+j++;
n=(++i)+(++j)+m;
cout<<i<<'\t'<<j<<'\t'<<m<<'\t'<<n<<endl;
return 0;
}
2.8题
#include <iostream>
using namespace std;
int main()
{char c1='C', c2='h', c3='i', c4='n', c5='a';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
cout<<"password is:"<<c1<<c2<<c3<<c4<<c5<<endl;
return 0;
}
第三章
3.2题
#include <iostream>
#include <iomanip>
using namespace std;
int main ( )
{float h,r,l,s,sq,vq,vz;
const float pi=3.1415926;
c程序设计谭浩强pdf百度网盘 cout<<"please enter r,h:";
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<<"l= "<<setw(10)<<l<<endl;
cout<<"s= "<<setw(10)<<s<<endl;
cout<<"sq="<<setw(10)<<sq<<endl;
cout<<"vq="<<setw(10)<<vq<<endl;
cout<<"vz="<<setw(10)<<vz<<endl;
return 0;
3.3题
#include <iostream>
using namespace std;
int main ()
{float c,f;
cout<<"请输入一个华氏温度:";
cin>>f;
c=(5.0/9.0)*(f-32);        //注意5和9要用实型表示,否则5/9值为0
cout<<"摄氏温度为:"<<c<<endl;
return 0;
};
3.4题
#include <iostream>
using namespace std;
int main ( )
{char c1,c2;
cout<<"请输入两个字符c1,c2:";
c1=getchar();        //将输入的第一个字符赋给c1
c2=getchar();        //将输入的第二个字符赋给c2
cout<<"用putchar函数输出结果为:";
putchar(c1);
putchar(c2);
cout<<endl;
cout<<"用cout语句输出结果为:";
cout<<c1<<c2<<endl;
return 0;
}
3.4题另一解
#include <iostream>
using namespace std;
int main ( )
{char c1,c2;
cout<<"请输入两个字符c1,c2:";
c1=getchar();        //将输入的第一个字符赋给c1
c2=getchar();        //将输入的第二个字符赋给c2
cout<<"用putchar函数输出结果为:";
putchar(c1);
putchar(44);
putchar(c2);
cout<<endl;
cout<<"用cout语句输出结果为:";
cout<<c1<<","<<c2<<endl;
return 0;
}
3.5题
#include <iostream>
using namespace std;
int main ( )
{char c1,c2;
int i1,i2;                  //定义为整型
cout<<"请输入两个整数i1,i2:";
cin>>i1>>i2;
c1=i1;
c2=i2;
cout<<"按字符输出结果为:"<<c1<<" , "<<c2<<endl;
return 0;
}
3.8题
#include <iostream>
using namespace std;
int main ( )
{ int a=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||1)<<endl;
  cout<<(!(x=a) && (y=b) && 0)<<endl;
  cout<<(!(a+b)+c-1 && b+c/2)<<endl;
  return 0;
3.9题
include <iostream>
using namespace std;
int main ( )
  {int a,b,c;
  cout<<"please enter three integer numbers:";
  cin>>a>>b>>c;
  if(a<b)
    if(b<c)
      cout<<"max="<<c;
    else
      cout<<"max="<<b;
    else if (a<c)
        cout<<"max="<<c;
    else
        cout<<"max="<<a;
    cout<<endl;
    return 0;
  }
3.9题另一解
#include <iostream>
using namespace std;
int main ( )
  {int a,b,c,temp,max ;
  cout<<"please enter three integer numbers:";
  cin>>a>>b>>c;
  temp=(a>b)?a:b;                /*  将a和b中的大者存入temp中 */
  max=(temp>c)?temp:c;            /*  将a和b中的大者与c比较,最大者存入max 
*/
  cout<<"max="<<max<<endl;
  return 0;
  }
3.10题
#include <iostream>
using namespace std;
int main ( )
  {int x,y;
  cout<<"enter x:";
  cin>>x;
  if (x<1)                           
      {y=x;
      cout<<"x="<<x<<", y=x="<<y;