编辑这个页面须要登录或更高权限!

C程序删除字符串中除字母之外的所有字符

C 语言编程实例大全

在此示例中,您将学习从用户输入的字符串中删除除字母之外的所有字符。

要理解此示例,您应该了解以下C语言编程主题:

删除字符串中除字母之外的字符

#include <stdio.h>
int main() {
   char line[150];
   
   printf("输入一个字符串: ");
   fgets(line, sizeof(line), stdin); //接受输入


   for (int i = 0, j; line[i] != '\0'; ++i) {

    //如果字符不是字母,则进入循环
    //不是空字符
      while (!(line[i] >= 'a' && line[i] <= 'z') && !(line[i] >= 'A' && line[i] <= 'Z') && !(line[i] == '\0')) {
         for (j = i; line[j] != '\0'; ++j) {

            //如果line的第j个元素不是字母,
            //将第(j + 1)个元素的值分配给第j个元素
            line[j] = line[j + 1];
         }
         line[j] = '\0';
      }
   }
   printf("输出字符串: ");
   puts(line);
   return 0;
}

输出结果

输入一个字符串: n2'h-o@84oo./
输出字符串: nhooo

该程序从用户获取字符串输入并将其存储在line变量中。然后,使用for循环来遍历字符串的字符。

如果字符串中的字符不是字母,则将其从字符串中删除,其余字符的位置向左移动1个位置。

C 语言编程实例大全