3.定义计数器类Counter。要求具有以下成员:计数器值;可进行增值和减值记数(每次增1或减1即可);可提供记数值。(要求使用构造函数对数据成员初始化)
源代码:
#include <iostream>
using namespace std;
class counter
{
int i;
public:
counter(int a);
void jia();
void jian();
int shuchu();
};
void counter::jia()
{
i++;
}
void counter::jian()
{
i--;
}
int counter::shuchu()
{
return i;
}
counter::counter(int a)
{
i=a;
}
int main()
{
int m;
cout<<"初值为:"<<endl;
cin>>m;
counter a(m);
a.jia();
cout<<"自加后:"<<a.shuchu();
a.jian();
cout<<"自减后:"<<a.shuchu();
return 0;
}
运行结果:
运行结果:
初值为:
3
自加后:4自减后:3
Process returned 0 (0x0) execution time : 1.500 s
Press any key to continue.
4.定义一个阶乘类Cfactorial实现阶乘的计算和显示。 (要求使用构造函数对数据成员初始化)
源代码:
#include <iostream>
using namespace std;
class a
{
int x;
public:
int b(int n)
{
if (n == 1) return 1;
else return n*b(n - 1);
}
a(int n);
};
a::a(int n)
{
x=n;
}
int main()
{
int n;
cout << "请输入n的值:";
cin >> n;
a A(n);
cout<<n<<"的阶乘为:"<<A.b(n)<<endl;
return 0;
}
运行结果:
请输入n的值:5
5的阶乘为:120
Process returned 0 (0x0) execution time : 2.310 s
Press any key to continue.
5.写两个重载函数sort,分别实现对int和double 数组进行排序。两个函数分别采用冒泡排序和选择排序。在main函数中调用这两个函数。
#include <iostream>
using namespace std;
void sort(int a[],int n)
{
for(int i=0;i<n-1;i++)
for(int j=0;j<n-i;j++)
{
int stemp;
if(a[j]>a[j+1])
{
stemp=a[j];
a[j]=a[j+1];
a[j+1]=stemp;
}
}
}
void sort(double b[],int x)
{
for(int j=0;j<x-1;j++)
for(int i=j+1;i<x;i++)
{ int stemp;
if(b[i]<b[j])
{stemp=b[j];
b[j]=b[i];
b[i]=stemp;
}
}}
int main()
{
int m,n;
cout<<"m的值:";
cin>>m;
cout<<"n的值:";
cin>>n;
int a[m];
double b[n];
cout<<"请输入a的值:";
for(int i=0;i<m;i++)
cin>>a[i];
cout<<"请输入b的值:";
for(int i=0;i<n;i++)
cin>>b[i];
sort(a,m);
sort(b,n);
cout<<"排序后的a";
for(int i=0;i<m;i++)
cout<<a[i]<<" ";
cout<<"排序后的b";
for(int i=0;i<n;i++)
cout<<b[i]<<" ";
return 0;
}
运行结果:
m的值:3
n的值:3
请输入a的值:1 3 2
请输入b的值:8 3 0
排序后的a1 2 3 排序后的b0 3 8
Process returned 0 (0x0) execution time : 28.090 s
Press any key to continue.
1786

被折叠的 条评论
为什么被折叠?



