标题:请教高手我这里哪个错了
只看楼主
ppm88
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1414
专家分:30
注 册:2007-1-28
得分:0 
以下是引用走刀口→超在2007-2-11 12:09:06的发言:
不过缺浪费了CPU和内存.



这点不算什么的,现在这么牛的PC

2007-02-11 12:29
田里兵蜂
Rank: 1
等 级:新手上路
威 望:2
帖 子:604
专家分:0
注 册:2007-1-29
得分:0 
以下是引用gongweixue在2007-2-11 11:33:58的发言:
输入10个数字,输出最大的一个

#include <stdio.h>
void main()
{
char a[10];
int n,i;
for(i=0;i<11;i++)
scanf("%d"a[i]) ;
for(i=0;i<11;i++)
{
if(a[i]<a[i+1])
{
n=a[i];a[i]=a[i+1];a[i+1]=n;
}
}
printf("%d",n);
}

楼主,你数据定义的大小是10 a[10]就是说有10个元素
而你的循环是for(i=0;i<11;i++) i=11才退出循环,i可以等于10
0-10有多少个元素?
11个呀,已经超出你数组的定义范围了
正确的程序楼下有很多,你仔细看看吧
再说一下
数组的元素是从0开始的
int b[3];
那他的元素是
b[0],b[1],b[2]

2007-02-11 12:41
jkmaple
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2007-1-15
得分:0 

上面的朋友说的都不错。


2007-02-11 14:25
hp198410
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-2-11
得分:0 
看的我都模糊了

2007-02-11 20:19
zhaojunshi
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-2-10
得分:0 
嵌套循环的标志最好用两个表示...我觉得是(里面的循环结束返回的i的值不是所要求的). 数组下标错了.

2007-02-11 23:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-120609-1-1.html




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

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