| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 907 人关注过本帖
标题:C++类中的数组对象问题,高手请赐教!
只看楼主 加入收藏
晴天一阵
Rank: 2
等 级:论坛游民
帖 子:40
专家分:24
注 册:2011-5-21
结帖率:91.67%
收藏
已结贴  问题点数:20 回复次数:5 
C++类中的数组对象问题,高手请赐教!
#include<iostream>
#include<stdlib.h>
using namespace std;
const int M=30;
class Item
{
    char Name[M];
    int Run[M];
    int Hit[M];
    int Nout[M];
    int count;
public:
    void CNT(void){count=0;};
    void getpoint(void);
    void avehit(void);
    void putpoint(void);
}
void Item::getpoint(void)
{
        cout<<"输入姓名:"<<"\n";
        cin>>Name[count];
        cout<<"输入跑垒得分:"<<"\n";
        cin>>Run[count];
        cout<<"输入击球得分:"<<"\n";
        cin>>Hit[count];
        cout<<"输入不出局次数:"<<"\n";
        cin>>Nout[count];
    count++;
}
void Item::putpoint(void)
{
    for(int i=0;i<count;i++)
    {
        cout<<Name[i]<<" "<<Run[i]<<" ";
        cout<<Hit[i]<<" "<<Nout[i]<<"\n";
    }
}
void Item::avehit(void)
{
    int ave=0;
    int sum=0;
    for(int i=0;i<count;i++)
        sum+=Hit[i];
    ave=sum/count;
    cout<<"平均击球数为:"<<ave;
}
int main()
{
    int n;
    Item order;
    ();
    do
    {
        cout<<"1:输入队员基本得分信息;"<<"\n";
        cout<<"2:求队员平均击球数;"<<"\n";
        cout<<"3:输出得分信息总表;"<<"\n";
        cout<<"4:退出;"<<"\n";
        cout<<"请输入你选择的操作序号:"<<"\n";
        cin>>n;
        system("cls");
        switch(n)
        {
        case 1:order.getpoint();break;
        case 2:order.avehit();break;
        case 3:order.putpoint();break;
        case 4:cout<<"退出";break;
        default:cout<<"输入有误,请重新输入!";
        }
    }while(n!=4);
    return 0;
}

输出窗口显示:
1>------ 已启动生成: 项目: 击球统计表练习3.6, 配置: Debug Win32 ------
1>生成启动时间为 2011/9/17 9:35:18。
1>InitializeBuildStatus:
1>  正在对“Debug\击球统计表练习3.6.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1>  练习.cpp
1>e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(18): error C2628: “Item”后面接“void”是非法的(是否忘记了“;”?)
1>e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(19): error C2556: “Item Item::getpoint(void)”: 重载函数与“void Item::getpoint(void)”只是在返回类型上不同
1>          e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(14) : 参见“Item::getpoint”的声明
1>e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(19): error C2371: “Item::getpoint”: 重定义;不同的基类型
1>          e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(14) : 参见“Item::getpoint”的声明
1>e:\360data\重要数据\我的文档\visual studio 2010\projects\击球统计表练习3.6\击球统计表练习3.6\练习.cpp(63): error C2264: “Item::getpoint”: 函数定义或声明中有错误;未调用函数
1>
1>生成失败。
1>
1>已用时间 00:00:01.36
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
搜索更多相关主题的帖子: 姓名 getpoint include public count 
2011-09-17 09:40
xg5699
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:140
专家分:522
注 册:2011-7-27
收藏
得分:10 
程序代码:
#include<iostream>
#include<stdlib.h>
using namespace std;
const int M=30;
class Item
{
    char Name[M];
    int Run[M];
    int Hit[M];
    int Nout[M];
    int count;
public:
    void CNT(void){count=0;};
    void getpoint(void);
    void avehit(void);
    void putpoint(void);
}; //你漏了一个分号,替你加上就好了
void Item::getpoint(void)
{
        cout<<"输入姓名:"<<"\n";
        cin>>Name[count];
        cout<<"输入跑垒得分:"<<"\n";
        cin>>Run[count];
        cout<<"输入击球得分:"<<"\n";
        cin>>Hit[count];
        cout<<"输入不出局次数:"<<"\n";
        cin>>Nout[count];
    count++;
}
void Item::putpoint(void)
{
    for(int i=0;i<count;i++)
    {
        cout<<Name[i]<<" "<<Run[i]<<" ";
        cout<<Hit[i]<<" "<<Nout[i]<<"\n";
    }
}
void Item::avehit(void)
{
    int ave=0;
    int sum=0;
    for(int i=0;i<count;i++)
        sum+=Hit[i];
    ave=sum/count;
    cout<<"平均击球数为:"<<ave;
}
int main()
{
    int n;
    Item order;
    ();
    do
    {
        cout<<"1:输入队员基本得分信息;"<<"\n";
        cout<<"2:求队员平均击球数;"<<"\n";
        cout<<"3:输出得分信息总表;"<<"\n";
        cout<<"4:退出;"<<"\n";
        cout<<"请输入你选择的操作序号:"<<"\n";
        cin>>n;
        system("cls");
        switch(n)
        {
        case 1:order.getpoint();break;
        case 2:order.avehit();break;
        case 3:order.putpoint();break;
        case 4:cout<<"退出";break;
        default:cout<<"输入有误,请重新输入!";
        }
    }while(n!=4);
    return 0;
}

都不结贴我郁闷那!
2011-09-17 09:52
lucky563591
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:765
专家分:2103
注 册:2009-11-18
收藏
得分:10 
定义class Item事没有打分号,新手很容易忽略这个问题!而且你的程序写得有点问题。
2011-09-17 09:53
晴天一阵
Rank: 2
等 级:论坛游民
帖 子:40
专家分:24
注 册:2011-5-21
收藏
得分:0 
回复 2楼 xg5699
谢谢...谢谢....
2011-09-17 13:44
晴天一阵
Rank: 2
等 级:论坛游民
帖 子:40
专家分:24
注 册:2011-5-21
收藏
得分:0 
回复 2楼 xg5699
非常感谢!
2011-09-17 13:45
晴天一阵
Rank: 2
等 级:论坛游民
帖 子:40
专家分:24
注 册:2011-5-21
收藏
得分:0 
回复 3楼 lucky563591
非常感谢
2011-09-17 13:46
快速回复:C++类中的数组对象问题,高手请赐教!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015768 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved