| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 406 人关注过本帖
标题:谭浩强书上的例题,运行的结果有问题!请各位大侠帮我看看问题出在哪里,问 ...
只看楼主 加入收藏
爱维尔
Rank: 2
等 级:论坛游民
帖 子:3
专家分:11
注 册:2012-8-21
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:3 
谭浩强书上的例题,运行的结果有问题!请各位大侠帮我看看问题出在哪里,问题如下
#include <iostream>
using namespace std;
class Array_Max
{
public:
    void set_valua();
    void max_valua();
    void show_valua();
private:
    int array[10];
    int max;
};
void Array_Max::set_valua()
{
    int i;
    for(i=0;i<10;i++)
        cin >> array[i];
}
void Array_Max::max_valua() //求最大值
{
    int i;
    int max = array[0];
    for(i=0;i<10;i++)
    {
         if(array[i] > max)
        max = array[i];      //函数能够将最大值求出,并且将最大值赋给max
    }
}
void Array_Max::show_valua()   //这个输出函数却不能正确输出最大值,输出的是类中的max的值
{
    cout <<"max = "<< max <<endl;  
}
int main()
{
    Array_Max arrmax;
    arrmax.set_valua();
    arrmax.max_valua();
    arrmax.show_valua();
    return 0;
}
我在运行窗口中输入如下数字:
23 67 32 26 89 99 2 7 -89 6
却得到的结果为:
max = -858993460
搜索更多相关主题的帖子: void max private include public 
2012-08-21 16:43
血祭幻岚
Rank: 2
等 级:论坛游民
帖 子:29
专家分:72
注 册:2012-3-21
收藏
得分:3 
void Array_Max::max_valua() //求最大值
 {
     int i;
    int max = array[0];//这里你又定义了一个max,作为局部变量,根本没有改变你类里定义的max
     for(i=0;i<10;i++)
     {
          if(array[i] > max)
         max = array[i];      //函数能够将最大值求出,并且将最大值赋给max
     }
 }

2012-08-21 18:01
mfs111116
Rank: 2
来 自:山东烟台
等 级:论坛游民
帖 子:28
专家分:38
注 册:2012-8-22
收藏
得分:2 
类的max是私有变量,而且似乎并没有对它进行值的传递……新手刚学,大家原谅些个……
2012-08-22 07:18
zhuanjia0
Rank: 4
等 级:业余侠客
威 望:3
帖 子:86
专家分:232
注 册:2012-1-13
收藏
得分:0 
void Array_Max::max_valua() //求最大值
{
    int i;
    int max = array[0];    //重复定义max
    for(i=0;i<10;i++)
    {
         if(array[i] > max)
        max = array[i];      //函数能够将最大值求出,并且将最大值赋给max
    }
}


重复定义了max变量,如果你没加上作用于运算符的话,系统会是用在该函数体里的同名变量max。最简单的解决办法是将int max = array[0];去掉
2012-08-30 23:27
快速回复:谭浩强书上的例题,运行的结果有问题!请各位大侠帮我看看问题出在哪里 ...
数据加载中...
 
   



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

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