m0_56802336
我要去洗澡
2021-05-13 20:25
采纳率: 50%
浏览 59

c语言编程:输入字符串,删除数字

从键盘上输入一个含有数字的字符串,然后在原字符串中删除其中的数字。如输入的字符串为"ab12cd345e",则处理后的字符串为"abcde".程序中只能定义一个数组。

提示:所谓删除就是将后面的非数字字符前移,将数字覆盖掉。要注意字符串结束符(空字符)的位置。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • technologist_24
    CSDN专家-黄老师 2021-05-13 20:30
    已采纳
    // 删除数字
    #include <stdio.h>
    #define N 100
    int main(void)
    {
    	char s[N];
    	int j,k;
    	gets(s);// 输入字符串
    	for(j = k = 0;s[j]!='\0';j++)// 此循环用于删除字符串中的数字
    		if(s[j]<'0'||s[j]>'9')
    			s[k++] = s[j];
    	s[k] = '\0';// 处理过的字符串加上结束标志'\0'
    	puts(s);// 输出处理过的字符串
    	return 0;
    }
    
    点赞 1 评论
  • technologist_16
    #include <stdio.h>
    
    void main()
    {
        char s[100];
        gets(s);
        int i = 0, j = 0;
        while (s[i]!='\0')
        {
            s[j] = s[i];
            if (!(s[i]>='0' && s[i]<='9'))
                j++;
            i++;
        }
        s[j] = '\0';
        printf("%s",s);
    }
    
    点赞 评论
  • QA_Assistant
    有问必答小助手 2021-05-14 15:34

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    点赞 评论

相关推荐