例题3.1
#include<iostream>
using namespace std;
int main()
{
cout<<"This is aprogram.\n";
cout<<"This"<<"is"<<"a"<<"program.\n";
cout<<"This"
<<"is"
<<"a"
<<"program.\n";
return 0;
}
补充情况 1
#include<iostream>
using namespace std;
int main()
{
cout<<"This is aprogram.\n";
cout<<"This"<<"is"<<"a"<<"program.\n\n\n\n\n";
cout<<"This"
<<"is"
<<"a"
<<"program.\n";
return 0;
}
课本编程题
习题5.
/*******求自然对数e的近似值,要求使其误差小于10 -6********/
#include<iostream>
using namespace std;
int main (){
long double temp=1.0, e=1.0;
long double f=1;
for (int i =1;;i++){
f*=i;
e+=1.0/f;
if((e-temp)<1e-6) //如果两次计算出的e值误差小于10-6,则退出
break;
temp=e;
}
cout<<"自然对数e的近似值为:"<<e<<endl;
return 0;
}
习题 6
/******求圆周率π的近似值,要求使其误差小于 10 -6***/
#include<iostream>
using namespace std;
int main()
{
int a;
double f=1,pi=0;
for(a=1;1.0/(2*a-1)>1e-6;a++)
{
pi=pi+f/(2*a-1);
f=-f;
}
pi=pi*4;
cout<<"值为"<<pi<<endl;
return 0;
}
/*******输入数据,并按小于10,10~99,100~999,1000以上分类并显示****/
#include <iostream>
using namespace std;
int main(){
int number;
cout<<"请输入一个整数:";
cin>>number;
if ( number<10 )
cout<<number<<" 小于10. ";
else if ( number<=99 )
cout<< number<<" 10~99. ";
else if ( number<=999 )
cout<<number<<" 100~999. ";
else
cout<<number<<" 1000以上. ";
cout<<endl;
return 0;
}
习题8.
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
cout<<setfill(' ') //设置填充字符为“*”
<<setw(4)<<"*"<<endl
<<setw(5)<<"***"<<endl
<<setw(6)<<"*****"<<endl
<<setw(7)<<"*******"<<endl
<<setw(6)<<"*****"<<endl
<<setw(5)<<"***"<<endl
<<setw(4)<<"*"<<endl;
return 0;
}
习题9.
/******求满足条件的最大n值*****/
#include<iostream>
using namespace std;
int main()
{
int sum=0,n;
for(n=1;;n++)
{
sum+=n*n;
if(sum>=1000)
break;
}
sum -=n*n;
cout<<"满足\"1*1+2*2+3*3+…+n*n<=1000\"的最大n值为"<<n-1<<endl
<<"其和为:"<<sum<<endl;
return 0;
}
习题 10
/*******计算一个月中陌生人和百万富翁分别给对方的钱的数量*******/
#include<iostream>
using namespace std;
int main()
{
double day = 0.01, stranger=0.0, millionaire=10.0;
//变量stranger表示陌生人得到的钱数,millionaire表示百万富翁得到的钱数
for (int i=1;i<=30;i++)
{ stranger +=day;
day*=2;
}
stranger/=10000.0; // 以万元为单位
millionaire *=30;
cout<<"这一个月中陌生人给了百万富翁"<<millionaire<<"万元"<<endl
<<"百万富翁给了陌生人"<<stranger<<"万元"<<endl;
return 0;
}
习题11.
#include<iostream>
using namespace std;
int main()
{
int i=1;
while(i<10) {
int j=1;
while(j<=i) {
cout<<j<<"x"<<i<<"="<<i*j<<"\t";
j++;
}
cout<<"\n";
i++;
}
return 0;
}
作业2(百钱百鸡问题)
//*******************百钱百鸡问题***********************//
#include<iostream>
using namespace std;
int main()
{int x,y,z,t=0;
cout<<"百钱百鸡 "<<"\n";
for(x=0;x<=20;x++) //外层控制鸡翁的数量
for(y=0;y<=33;y++) //内层控制鸡母数量
{
z=100-x-y; //内外层循环控制下,鸡雏数z的值受x,y的值的制约
if (z%3==0&&5*x+3*y+z/3==100) //验证取z值的合理性及得到一组解的合理性
cout<<"cock="<< x <<endl
<<"hen="<< y <<endl
<<"chicken="<< z <<"\n"<<endl;
}
return 0;
}