printf("enter 10 integer numbers:");
for(i = 0;i < 10;i++)
scanf("\n");
for(i = 1,m = [0],n = 0;i < 10;i++)
{
if (max(m,a[i]) > m)
{
m = max(m,a[i]);
n = i;
}
}
printf("The largest number is %d\nit is the %dth number.\n",m,n+1)0;
}
......有一个其它函数,就想知道为什么主函数不需要返回值。
程序错误很多,怎么不需要返回值呢?没有返回值,在主函数中如何比较判断,以下为修改后的程序,请笑纳。
# include<stdio.h>int main()
{
int max(int x,int y);
int a[10],m,n,i;
printf("enter 10 integer numbers:");
for(i = 0;i < 10;i++)
scanf("%d",&a[i]);
for(i = 1,m =a[0],n = 0;i < 10;i++)
{
if (max(m,a[i]) > m)
{
m = max(m,a[i]);
n = i;
}
}
printf("The largest number is %d\nit is the %dth number.\n",m,n+1);
}
//......有一个其它函数,就想知道为什么主函数不需要返回值。
int max(int x,int y)
{
int max;
max=x>y?x:y;
return max;
}
/*在VC++6.0运行结果:
----------------------
enter 10 integer numbers:85 4 66 33 21 25 87 1 7 12
The largest number is 87
it is the 7th number.
请按任意键继续. . .
*/追问
谢谢,我知道在void开头的函数不需要返回值,就不解一个程序它是在什么情况下主函数没有返回值。请赐教。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-09-07
主函数都需要返回 int的。追问
麻烦能不能说的再明确点
追答你代码没贴完整不好说。
追问int max(int x,int y)
{
return(x>y? x:y);
}
这是剩余的部分
这个有返回啊 返回的是 x > y ? x:y 的结果 。
一般标准的main函数都要有一个int的返回值 文献上也是这么说的。
但是,它的主函数没有返回值啊????
追答你的编译器能编译得过吗。它没有返回值肯定会提示出错的。