段错误。。寒
程序介绍,输入字符串,比如a123x456 789;
输出其中的数字串,即123 456 789
程序#include<stdio.h>
#include<string.h>
void sort(char str[50]);
int main()
{
char str[50];
printf("input a str\n");
fgets(str,50,stdin);
sort(str);
}
void sort(char str[50])
{
int i,j=0,p=0,num=0;
int a[50];
for(i=0;i<strlen(str);i++)
{
if(str[i]>='0'&&str[i]<='9')
{
p++;
if(str[i+1]<'0'||str[i+1]>'9')
{
for(i=0;i<p;i++)
{
num=num+(str[i-p+1]-48)*10^(p-1);
a[j]=num;
j++;
p=0;
}
}
}
}
for(i=0;i<(j-1);i++)
printf("%5d",a[i]);
}
25(a[j]=num;)行出现段错误,能否有人帮忙查下