Yearn1MY
2020-02-01 21:38
采纳率: 100%
浏览 660

找出一个整形数组中的元素的最大值

程序没有编译错误,能够正常运行,但是输出结果与题目要求不符合,代码检查过很多遍,没有错误。
运行时,我用空格,逗号,tab来隔开各个输入的数组元素,但是无论输入什么,最后的结果都是1,想请大家帮我看看,感激不尽

using namespace std;
class Array_max
{
    public:
        void set_value();
        void max_value();
        void show_value();
    private:
        int array[10];
        int max;
};

void Array_max::set_value()
{
    int i;
    for(i=0;i<10;i++);
    cin>>array[i];
}

void Array_max::max_value()
{
    int i;
    max=array[0];
    for(i=0;i<10;i++);
    {   
        if (array[i]>max ) max=array[i];
    }

}

 void Array_max::show_value()
{
    cout<<"max="<<max<<endl;
}
int main()
{
    Array_max arraymax1;
    arraymax1.set_value();
    arraymax1.max_value();
    arraymax1.show_value();
    return 0;
}

旁边附上运行结果
```![图片说明](https://img-ask.csdn.net/upload/202002/01/1580564262_877665.png)
请大家有空帮我看看,谢谢
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • wlj1234 2020-02-01 23:30
    已采纳

    程序逻辑应该没错。
    max变量换个名字,较新的编译器,std::max()是个函数,另外在window.h中max是个宏定义。应尽量避免冲突

    点赞 打赏 评论
  • blownewbee 2020-02-01 23:31
    void Array_max::set_value()
    {
        int i;
        for(i=0;i<10;i++) //这里多了一个分号
        cin>>array[i];
    
    }
    

    问题解决的话,请点下采纳

    点赞 打赏 评论

相关推荐 更多相似问题