c语言问题怎么做?

来源:百度知道 编辑:UC知道 时间:2024/05/13 15:00:53
1) 从键盘输入一个字符串(不超过100个字符);
(2) 删除字符串中所有的数字,组成一个新字符串从小到大排列并显示出来。
(如:输入:efgd1234abc 删除数字后组成的新字符串为:abcdefg)

理论是遍历所输入的字符串,遇到数字置换为""就行了。

以下程序在visualc++下通过
#include<stdio.h>
void main()
{char a[100],c[100],ch;
int i=0,j=0,k=0,x=0,y;
gets(a);
while(a[i]!='\0')
{
if(a[i]<='z'&&a[i]>='a')
{
c[j]=a[i];
j++;
}
i++;
}
for(k=0;k<j-1;k++)
for(x=0;x<j-k-1;x++)
if(c[x]>c[x+1])
{ch=c[x];c[x]=c[x+1];c[x+1]=ch;}
for(y=0;y<j;y++)
putchar(c[y]);
}

先排序 做循环ASCII 不在48 57之间就输出