当前位置: 代码迷 >> C语言 >> 数组
  详细解决方案

数组

热度:547   发布时间:2008-05-09 17:17:09.0
数组
#define size 10
main()
{ int x[size],i,max,min;
  printf("Enter 10:\n");
  for(i=0;i<size;i++)
  scanf("%d",&x[size]);
  max=min=x[0];
  for(i=0;i<size;i++)
  {
   if(max<x[i]) max=x[i];
   if(min>x[i]) min=x[i];
  }
  printf("max=%d\n",max);
  printf("min=%d\n",min);
}
输入10个数进去后为什么运行结果不对啊!还出来负数了!汗!看了半天还是不明白问题出哪里!
----------------解决方案--------------------------------------------------------
scanf("%d",&x[size]);
应该是scanf("%d",&x[i]);
----------------解决方案--------------------------------------------------------
恩,好了!谢谢中学者!
----------------解决方案--------------------------------------------------------
for(i = 0; i < size; i++)
        scanf("%d", &x[size]);   // 错误  // &x[i]


#include <stdio.h>
#include <stdlib.h>

#define SIZE 10   // 常量一般用大写

int main(void)
{
    int x[SIZE], i, max, min;
   
    printf("Enter 10:\n");
    for(i = 0; i < SIZE; i++)
        scanf("%d", x + i);
   
    max = min = x[0];
   
    for(i = 0; i < SIZE; i++)
    {
        if(max < x[i])
            max = x[i];
        if(min > x[i])
            min = x[i];
    }
    printf("max = %d\n", max);
    printf("min = %d\n", min);
   
    system("Pause");
    return 0;
}

[[it] 本帖最后由 cosdos 于 2008-5-9 17:28 编辑 [/it]]
----------------解决方案--------------------------------------------------------
  相关解决方案