首页 > 用户发贴区 > 编程问题提问区 > 请帮忙看一下程序
2008
03-06

请帮忙看一下程序

以下程序的功能为:删除字符串中的数字字符后输出.


/* Note:Your choice is C IDE */
#include “stdio.h”
void delnum(char *s)
{int i,j;
   for(i=0;i<strlen(s)-1;i++)
   if(s[i]>=’0′&&s[i]<=’9′)
    strcpy(&s[i],&s[i+1]);
   }
main()
{char * item;
   printf(“\nplease input a string:”);
   scanf(“%s”,item);
   delnum(item);
   printf(“\n%s”,item);
}
    但当输入如下串时:abc2356er时,输出为:abc36er,中间的36删不掉,请帮忙修改以上程序,使其功能完善.谢谢


 


 


请帮忙看一下程序》有 1 条评论

  1. daxia4540827 说:

    #include “stdio.h”
    void delnum(char *s)
    {int i,j;
       for(i=0;i<strlen(s)-1;i++)
       if(s[i]>=’0′&&s[i]<=’9′)
        {strcpy(&s[i],&s[i+1]);

    i–;}
       }
    main()
    {char * item;
       printf(“\nplease input a string:”);
       scanf(“%s”,item);
       delnum(item);
       printf(“\n%s”,item);
    }

    碰到数字后,字符串先进行覆盖,而后i的 值要改变才行,不然就少处理了一位。

留下一个回复