Teenits 2008-5-6 14:06
改了一下
[code]#include <iostream.h>
#include "CCharacterStatistic.h"
void main(int argc ,char *argv[])
{
CCharacterStatistic CS;
char input[1024];
char n;
int i;
char ch;
while (1)
{
cout<<<"请输入字符串:"<
i=0;
CS.Reset();
cin.get(ch);
while (ch!='\n')
{
input=ch;
i++;
}
input = '\0';
CS.Analyze (input);
cout<<"输入的英文字符数为:"<<
cout<<"输入的数字字符数为:"<<
cout<<"输入的空格为:"<<
cout<<"输入的其他字符数为:"<<
cout<<"请输入相应道德操作程序号进行操作:"<
cout<<"1)继续统计(计数不请零)"<<<"2)请零后重新统计"<<<"3)退出系统"<
cout<<"$ >\\";
cin>>n;
while (n <'1' || n >'3')
{
cout<<"请输入正确的操作序号!"<
cout<<"[ DISCUZ_CODE_1 ]gt;\\";
cin>>n;
}
switch (n)
{
case '1':
break;
case '2':
break;
CS.Reset();
break;
case '3':
return;
}
}
}[/code]
Teenits 2008-5-7 13:01
[quote]原帖由 [i]kaizuki[/i] 于 2008-5-7 12:21 发表 [url=http://www.stubc.com/redirect.php?goto=findpost&pid=4312&ptid=992][img]http://www.stubc.com/images/common/back.gif[/img][/url]
那啥,其实我想说,这个我更看不懂了 [/quote]
?什么意思呢
我只是修改了cpp文件的错误
其他没做改动呀
kaizuki 2008-5-8 15:59
这整个CPP文件我看不懂,在我的VC里面好多语法错误
最主要的是,整个程序怎么会有两个主函数__a7
Webmaster 2008-5-8 16:43
[quote]原帖由 [i]kaizuki[/i] 于 2008-5-8 15:59 发表 [url=http://www.stubc.com/redirect.php?goto=findpost&pid=4387&ptid=992][img]http://www.stubc.com/images/common/back.gif[/img][/url]
这整个CPP文件我看不懂,在我的VC里面好多语法错误
最主要的是,整个程序怎么会有两个主函数__a7 [/quote]
复制时出错,粘了两次
删了一个了
kaizuki 2008-5-8 18:11
还是有“找不到头文件”这个错误
#include <iostream.h>
//#include <CCharacterStatistic.h>
class CCharacterStatistic
{
public:
void Analyze(const char *input);
CCharacterStatistic();
virtual ~CCharacterStatistic();
int GetCharCount();
int GetDigitCount();
int GetSpaceCount();
int GetOtherCount();
void Reset();
private:
int m_charCount;
int m_digitCount;
int m_spaceCount;
int m_otherCount;
};
CCharacterStatistic::CCharacterStatistic()
{
Reset();
}
CCharacterStatistic::~CCharacterStatistic()
{
}
int CCharacterStatistic::GetCharCount()
{
return m_charCount;
}
int CCharacterStatistic::GetDigitCount()
{
return m_digitCount;
}
int CCharacterStatistic::GetSpaceCount()
{
return m_spaceCount;
}
int CCharacterStatistic::GetOtherCount()
{
return m_otherCount;
}
void CCharacterStatistic::Reset()
{
m_charCount =0;
m_digitCount =0;
m_spaceCount =0;
m_otherCount =0;
}
void CCharacterStatistic::Analyze(const char *input)
{
const char *p =input;
while (*p !='\0')
{
if ((*p >='a') && (*p <='z'))
{
m_charCount++;
}
else if ((*p>='A')&&(*p <= 'Z'))
{
m_charCount++;
}
else if ((*p >='0')&&(*p <='9'))
{
m_spaceCount++;
}
else if (*p ==' ')
{
m_otherCount++;
}
p++;
}
}
void main(int argc ,char *argv[])
{
CCharacterStatistic CS;
char input[1024];
char n;
int i;
char ch;
while (1)
{
cout<<endl<<"请输入字符串:"<<endl;
i=0;
CS.Reset();
cin.get(ch);
while (ch!='\n')
{
input[i]=ch;
i++;
}
input[i] = '\0';
CS.Analyze(input);
cout<<"输入的英文字符数为:"<<CS.GetCharCount()<<endl;
cout<<"输入的数字字符数为:"<<CS.GetDigitCount()<<endl;
cout<<"输入的空格为:"<<CS.GetSpaceCount()<<endl;
cout<<"输入的其他字符数为:"<<CS.GetOtherCount()<<endl;
cout<<"请输入相应道德操作程序号进行操作:"<<endl;
cout<<"1)继续统计(计数不请零)"<<endl<<"2)请零后重新统计"<<endl<<"3)退出系统"<<endl;
cout<<"$ >\\";
cin>>n;
while (n <'1' || n >'3')
{
cout<<"请输入正确的操作序号!"<<endl;
cout<<"$>\\";
cin>>n;
}
switch (n)
{
case '1':
break;
case '2':
break;
CS.Reset();
break;
case '3':
return;
}
}
}
这样就没语法错误了,但还是有逻辑错误