| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 397 人关注过本帖
标题:请教一个练习中出现的问题
只看楼主 加入收藏
dreamsir
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2013-1-11
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:6 
请教一个练习中出现的问题
习题是求一个数组的最大值,最小值和其对应的下标,编程如下:
#include"stdio.h"
#include"math.h"
void main()
{
  int a[5]={21,88,90,65,29},i,max,min,maxi,mini;
  max=a[0];
  min=a[0];
  for(i=0;i<=4;i++)
     {
       if(a[i]>max)
      {
        max=a[i];
        maxi=i;
      }
       if(a[i]<min)
      {
        min=a[i];
        mini=i;
      }
     }
  printf("max=%d,max_i=%d,min=%d,min_i=%d\n",max,maxi,min,mini);

}

运行后,mini的结果居然是3219,百思不得其解,求大神指点.
搜索更多相关主题的帖子: max include 最大值 
2013-01-18 14:44
dreamsir
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2013-1-11
收藏
得分:0 
结果是3129,说错了` 求大神指点啊``
2013-01-18 14:50
蟹在头上
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2012-12-1
收藏
得分:5 
窝不是大神 但是我试了一下 楼主你看看
只要在加上 maxi=0;mini=0; 就应该没事了
2013-01-18 15:28
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:0 
程序代码:
#include <stdio.h>
#include <math.h>

int main(void)
{
  int a[] = {21,88,90,65,29};
  int i = 0;
  int max = a[0];
  int min = a[0];
  int maxi = 0;
  int mini = 0;

 
  for(i=0;i<5;i++)
     {
       if(a[i]>max)
      {
        max = a[i];
        maxi = i;
      }
       if(a[i]<min)
      {
        min=a[i];
        mini=i;
      }
     }
  printf("max=%d,max_i=%d,min=%d,min_i=%d\n",max,maxi,min,mini);

}


I have not failed completely
2013-01-18 15:30
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:10 
程序代码:
 if(a[i]>max)
      {
        max=a[i];
        maxi=i;
      }
       if(a[i]<min)
      {
        min=a[i];
        mini=i;
      }
如果if语句没有执行mini和maxi就没有被赋值,故是非法的
养成为变量初始化的好习惯吧...

I have not failed completely
2013-01-18 15:33
羽VS翼
Rank: 2
等 级:论坛游民
帖 子:26
专家分:43
注 册:2013-1-17
收藏
得分:5 
你的代码里没有初始化,自始至终你的程序都没有运行mini = i;这段代码因为if(a[i]<mini)一直不成立


直接把mini= 0初始化就可以了,编码习惯一定要养成
2013-01-18 15:35
dreamsir
Rank: 1
等 级:新手上路
帖 子:10
专家分:3
注 册:2013-1-11
收藏
得分:0 
多谢各位指点,刚学,是找资料上面写的` `
2013-01-18 18:00
快速回复:请教一个练习中出现的问题
数据加载中...
 
   



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

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