建立一个类NUM,并统计特定序列中相同的字符的个数。
具体要求如下:
(1)私有数据成员
l char data[25]:随机生成25 个字符。
l int num[128]:储存每个字符出现的个数。
(2)公有数据成员
l NUM(int data):构造函数,同时初始化数组data。
l void process( ):统计数组data 中每个字符出现的个数,并保存到数组
num 中。
l void print( ):输出每个出现过的字符及其出现的个数,每行输出5 个,
没有出现过的字符不显示。
(3)在主程序中定义一个对象,对该类进行测试。
个人表示有点困难啊
[mw_shl_code=cpp,true]#include <stdio.h>
#include <stdlib.h>
#include <string.h>
class NUM
{
private:
char m_data[25];
int m_num[128];
public:
NUM()
{
memset(m_data, '\0', 25);
memset(m_num, 0, sizeof(m_num));
int i;
char* p = m_data;
for(i = 0; i<25; i++)
{
*p = rand()%128;
p++;
}
}
void process()
{
int i;
int* p = m_num;
for(i = 0; i<25; i++)
{
p += m_data;
(*p)++;
p = m_num;
}
}
void print()
{
int i;
printf("data is:");
for(i=0; i<25; i++)
{
printf("%c", m_data);
}
printf("\n");
for(i=0; i<128; i++)
{
if(m_num!=0)
{
printf("'%c'(%d):%d\n", (char)i, i, m_num);
}
}
}
};
int main()
{
NUM test;
test.process();
test.print();
getchar();
return 0;
}
[/mw_shl_code]
好手生啊,半天写不出来。。。
[查看全文]
