当前位置: 代码迷 >> C语言 >> 为什么结果不是预想的呢?
  详细解决方案

为什么结果不是预想的呢?

热度:210   发布时间:2007-09-14 09:14:13.0
为什么结果不是预想的呢?


本想让他输出十个数中的最大的,可输出的是一个3129不明白是什么意思.
void main ()
{ int i,max,a[10];
printf("input 10 number:\n");
for(i=0;i<10;i++);
scanf("%d",&a[i]);
max=a[0];
for (i=1;i<10;i++)
if (a[i]>max) max=a[i];
printf ("maxmum=%d\n",max);
}
搜索更多相关的解决方案: 预想  结果  

----------------解决方案--------------------------------------------------------
for(i=0;i<10;i++);
scanf("%d",&a[i]);
请问你的scanf还在for里吗?分号不要乱加,成对大括号加上能显得更清楚就最好加上



by 雨中飞燕 QQ:78803110 QQ讨论群:5305909

[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/
----------------解决方案--------------------------------------------------------

是的!
因为输入的每一个数都要一个地址;才行!


----------------解决方案--------------------------------------------------------

- -
多写了一个;
而且...太乱了感觉.
[CODE]#include<stdio.h>
#include<conio.h>
int main()
{
int i,max,a[10];
printf("input 10 number:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
for (i=1;i<10;i++)
if (a[i]>max) max=a[i];
printf ("maxmum=%d\n",max);
getch();
return 0;
}[/CODE]


这样就行了.


----------------解决方案--------------------------------------------------------
肥燕```数组没有赋初值```默认的值是不是全部为0``````



----------------解决方案--------------------------------------------------------
...回楼上...- -虽然不是叫我...
在数组没有赋初值的时候默认的值不为0
但是比如说a[10]={1}的时候第一个数值被赋1值.其他的自动赋0值.

----------------解决方案--------------------------------------------------------
知道了``谢谢```
----------------解决方案--------------------------------------------------------
现学现卖.今天才学的...
----------------解决方案--------------------------------------------------------

初始值每个编译器都可能不同.


----------------解决方案--------------------------------------------------------

TC的初始值好像是随机的


----------------解决方案--------------------------------------------------------
  相关解决方案