c数组越界:Runtime Error:Segmentation fault

#include<stdio.h>#include<string.h>intmain(){chara[1000];intsum=0,t,n=0,i,num=0,l,k=0... #include<stdio.h>
#include<string.h>
int main()
{
char a[1000];
int sum=0,t,n=0,i,num=0,l,k=0;
while(scanf("%s",a)!=EOF)
{
l=strlen(a);
for(i=0;i<l;i++)
sum+=a[i]-'0';
do{
k++;
if(k>0)
num=0;

t=sum;
while(sum>0)
{
t=sum%10;
sum=sum/10;
num+=t;
}
sum=num;
}while(num>=10);
printf("%d\n",num);
sum=num=0;
}
return 0;
}
Runtime Error:Segmentation fault
辅助解释:
Segmentation fault:段错误,检查是否有数组越界,指针异常,访问到不应该访问的内存区域

哪里数组越界了?
展开
 我来答
qiufeng1100
推荐于2018-03-20 · TA获得超过422个赞
知道小有建树答主
回答量:332
采纳率:20%
帮助的人:139万
展开全部
你这个是运行时错误 也就是只有在运行时才出现的 看你的代码,没有问题,可能是你输入的数据存在问题。不敢说这是数组越界,除非你累死了……段错误的原因非常多,最多的是内存非法访问,也可是系统有保护功能:死循环也会成为错误。所以你得调试跟踪……使用什么写代码?VC、VS、Turbo C的话使用快捷键 F5 直接高度,F9 下断点,F10 单步调试,F11进入函数,Shift+F5 退出调试。如果是linux下的,使用gdb进行调试,步骤就不细说了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式