例5.1
#include "stdafx.h"
#include<iostream>
using namespace std;
void display()
{
cout<<"This is an example."<<endl;}
int main(){
display();
return 0;
}
例5.2
#include "stdafx.h"
#include<iostream>
using namespace std;
double min(double x,double y)
{
return x<y? x:y;}
int main(){
cout<<min(6.0,5.0)<<endl;
return 0;
}
例5.3
#include "stdafx.h"
#include<iostream>
using namespace std;
double circleArea(double);
int main(){
double area=circleArea(5.0);
cout<<"area="<<area<<endl;
return 0;
}
double circleArea(double r)
{
double pi=3.14;
double area=pi*r*r;
return area;
}
#include "stdafx.h"
#include<iostream>
using namespace std;
double circleArea(double);
int main(){
double r;
cout<<"请输入圆的半径r=\n";
cin>>r;
double area=circleArea(r);
cout<<"area="<<area<<endl;
return 0;
}
double circleArea(double r)
{
double pi=3.14;
double area=pi*r*r;
return area;
}
例5.4
#include "stdafx.h"
#include<iostream>
using namespace std;
int sum(int x,int y)
{
int temp;
temp=x+y;
return temp;}
int main(){
int a,b,c;
a=10;b=5;
c=sum(a,b);
cout<<a<<"+"<<b<<"="<<c<<endl;
return 0;
}
例5.5
#include "stdafx.h"
#include<iostream>
using namespace std;
int ncomp(int i,int j)
{
if(i>j)return 1;
if(i==j)return 0;
return -1;
}
int main()
{
int k=2;
int n=ncomp(k,++k);
cout<<n<<endl;
return 0;}
习题2
#include "stdafx.h"
#include<iostream>
using namespace std;
long int power(int base,int exponent);
int main()
{
int base,exponent;
cout<<"请输入基数和其幂(用空格键隔开):"<<endl;
cin>>base>>exponent;
power(base,exponent);
cout<<base<<"的"<<exponent<<"次方为"<<power(base,exponent)<<endl;
return 0;
}
long int power(int base,int exponent)
{
for(int i=1,int s=1;i<=exponent;i++)
s=s*base;
return s;
}
习题3
#include "stdafx.h"
#include<iostream>
using namespace std;
char *fac(int);
int main()
{
int a;
cout<<"请输入一个大于1正整数:"<<endl;
cin>>a;
if(a<=1){
cout<<"输入有误,请重新输入!!"<<endl;
cin>>a;
cout<<fac(a)<<endl;}
else
cout<<fac(a)<<endl;
}
char *fac(int x)
{
if(x==2)
return "这个数是素数";
for(int i=2;i<x;i++)
if(x%i==0)
return "这个数是合数";
else return "这个数是素数";
}
习题4
#include "stdafx.h"
#include<iostream>
#include<math.h>
using namespace std;
int func(int);
int main()
{
int a;
cout<<"请输入一个正整数:"<<endl;
cin>>a;
cout<<a<<"的逆序数为:"<<func(a)<<endl;
return 0;
}
int func(int x)
{
int a[50];
int i,n=0,s,sum,m;
while (x!=0)
{
i=x%10,
x=x/10,
a[n]=i,
n++;
}
m=n-1;
for(i=0,sum=0;i<n;i++)
sum+=a[i]*pow(10,m),m--;
return sum;
}
习题5
#include "stdafx.h"
#include<iostream>
using namespace std;
char grade(int);
int main(){
int score;
cout<<"请输入百分制的成绩分数:";
cin>>score;
char ch=grade(score);
cout<<score<<"对应的等级为:"<<ch<<endl;
return 0;}
char grade(int n){
char ch;
if(n>=90&&n<100) ch='A';
else if(n>=80) ch='B';
else if(n>=70) ch='C';
else if(n>=60) ch='D';
else ch='E';
return ch;}
习题6
#include "stdafx.h"
#include<iostream>
using namespace std;
float average();
int main(){
float aver=average();
cout<<"平均成绩为:"<<aver<<endl;
return 0;}
float average(){
float a[10],sum=0,average;
cout<<"请输入10个学生的成绩:"<<endl;
for(int i=0;i<10;i++)
{ cin>>a[i];
sum+=a[i];}
average=sum/10;
return average;}
习题8
#include "stdafx.h"
#include<iostream>
using namespace std;
void mt1();
void mt2();
void mt3();
int main()
{ mt1();
mt2();
mt3();
return 0;}
void mt1()
{cout<<"*******************"<<endl;
for(int i=1;i<10;i++)
{for(int j=1;j<10;j++)
cout<<j<<"*"<<i<<"="<<j*i<<'\t';
cout<<endl;}}
void mt2()
{cout<<"*******************"<<endl;
for(int i=1;i<10;i++)
{for(int j=1;j<i;j++)
cout<<j<<"*"<<i<<"="<<j*i<<'\t';
cout<<endl;}}
void mt3()
{cout<<"*******************"<<endl;
for(int i=1;i<10;i++)
{for(int j=1;j<10;j++)
if(j<i)
cout<<'\t';
else
cout<<j<<"*"<<i<<"="<<j*i<<'\t';
cout<<endl;}}
作业三
#include "stdafx.h"
#include<iostream>
#include<iomanip>
using namespace std;
void Matrix(int A[4][5],int B[5][3])
{
int i,j,k;
int c[4][3]={0},t=0;
for(i=0;i<4;i++)
for(j=0;j<3;j++)
for(k=0;k<5;k++)
{ t=A[i][k]*B[k][j];
c[i][j]+=t;
}
cout<<"这两个矩阵的乘积为:"<<endl;
for(i=0;i<4;i++)
{
for(j=0;j<3;j++)
cout<<setw(8)<<c[i][j];
cout<<endl;
}
}
int main()
{
int A[4][5],B[5][3];
int i,k;
cout<<"请输入第一个A[4][5]矩阵的元素"<<endl;
for(i=0;i<4;i++)
for(k=0;k<5;k++)
cin>>A[i][k];
cout<<"请输入第二个矩阵B[5][3]的元素"<<endl;
for(i=0;i<5;i++)
for(k=0;k<3;k++)
cin>>B[i][k];
Matrix(A,B);
return 0;
}
作业四
#include "stdafx.h"
#include<iostream>
#include<iomanip>
using namespace std;
int N(int n)
{int a=1;
for(n;n>1;n--)
a*=n;
return a;}
int S(int n)
{int a,sum=0;
for(a=1;a<=n;a++)
sum+=N(n);
return sum;}
int main()
{
int n,Sn;
cout<<"若S[n]=1!+2!+3!+...n!"<<endl;
cout<<"则n=";
cin>>n;
Sn=S(n);
cout<<"时,S[n]="<<Sn<<endl;
return 0;
}
作业5
带小数的十六进不会弄。