标题:编译都没问题,但运行的时候老是出错,这是怎么回事???
只看楼主
ryan8866
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-28
 问题点数:0 回复次数:3 
编译都没问题,但运行的时候老是出错,这是怎么回事???
#include <stdio.h>
int test (int a[], int b[]);
main ( )
{
int a[9];
int b[9];
int i;
int result;
printf("Enter 10 integers for arrays A: ");
for (i=0; i<10; i++)
scanf("%d", &a[i]);
printf("Enter 10 integers for arrays B: ");
for (i=0; i<10; i++)
scanf("%d", &b[i]);
result=test (a, b);
if (result==1)
printf("The tow arrays A and B are equal.\n");
else if (result==0)
printf("The tow arrays A and B are not equal.\n");
}
int test (int a[], int b[])
{
int i;
i=0;
while (i<10)
{
if (a[i]==b[i])
i++;
else
return 0;
}
return 1;
}


高手帮我看看,怎么回事??????????
到底哪里出问题了?????????????

搜索更多相关主题的帖子: 编译 运行 
2006-05-28 22:39
ryan8866
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-28
得分:0 
这是出错的的截图。。。
2006-05-28 22:43
cathypu0725
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-5-26
得分:0 
应该定义长度为10的数组.
int a[10];
int b[10];
你的程序里只定义了长度为9的数组,要读10个数,当然会出错,数组越界了.
2006-05-29 10:44
Bekky
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:354
专家分:0
注 册:2006-5-29
得分:0 
楼上说的没错,你定义了长度为9的数组,怎么可以赋10个数给它呢??

i<10,就是0到9,一共是10个数,也可以该为i〈9就可以了.

我的编译环境为WinXp + VC 6.0 http://blog..cn/yobo
2006-05-29 12:46



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




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

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