#include<stdio.h>
void main()
{int i,j,max,a[10];
printf("please input 10 numbers:\n");
for(i=1;i<=10;i++)
scanf("%d",&a[i]);
for(max=a[1],j=2;j<=10;j++)
if(a[j]>max) max=a[j];
printf("%d",max);
}
大家帮忙看下哪里错了,为什么每次运行都是输出10,不知道怎么回事,谢谢..
2007-04-17 17:55
给你改了一下:
#include<stdio.h>
void main()
{
int i,j,max,a[10];
printf("please input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(max=a[0],j=1;j<10;j++)
if(a[j]>max) max=a[j];
printf("%d\n",max);
}

2007-04-17 18:21
2007-04-17 18:27
给你改了一下:
#include<stdio.h>
void main()
{
int i,j,max,a[10];
printf("please input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(max=a[0],j=1;j<10;j++)
if(a[j]>max) max=a[j];
printf("%d\n",max);
}
你这个只是格式上改了改,别的没变化

2007-04-17 18:29
2007-04-17 18:44
2007-04-17 18:46
那究竟是哪里错了呢?我运行的时候是出现10的,不管你输入什么都这样...我用的是VC++6.0
for(i=1;i<=10;i++)
改成for(i=0;i<10;i++)
如果你还有疑问,直接在for语句后加中括号
重起下机子看看
你眼睛真精
[此贴子已经被作者于2007-4-17 19:23:39编辑过]

2007-04-17 19:08
2007-04-17 19:11
干脆不要用数组了

#include<stdio.h>
void main()
{
int max,n,i=9;
scanf("%d",&max);
while(i--)
{
scanf("%d",&n);
max=max>n?max:n;
}
printf("%d\n",max);
}

2007-04-17 20:04
2007-04-17 20:13