c语言 将字符串str中的所有数字分离出来保存到一个数组中然后将数组排序后输

如题所述

#include<stdio.h>
int main()
{
char str[1000];
long sum=0,data[1000];
int i=0,top=0;

scanf("%s",str);
while(str[i]!='\0')
{
if(str[i]>='0'&&str[i]<='9')
{
sum=sum*10+(str[i]-'0');//连续数字转换为数.
}
else
{
if(sum!=0)保存这个数
{
data[top++]=sum;
sum=0;
}
}
i++;
}
if(sum!=0)//判断最后一个字符是否是数
{
data[top++]=sum;
}
i=0;
while(i<top)
{
printf("%ld\n",data[i]);
i++;
}
return(0);
}
温馨提示:答案为网友推荐,仅供参考
相似回答