删除字符串中除字母以外的所有字符的 C 程序
在此示例中,您将学习从用户输入的字符串中删除除字母以外的所有字符。
要理解此示例,您应该具备以下 C 语言编程主题的知识:
删除字符串中除字母以外的字符
#include <stdio.h>
int main() {
char line[150];
printf("Enter a string: ");
fgets(line, sizeof(line), stdin); // take input
for (int i = 0, j; line[i] != '\0'; ++i) {
// enter the loop if the character is not an alphabet
// and not the null character
while (!(line[i] >= 'a' && line[i] <= 'z') && !(line[i] >= 'A' && line[i] <= 'Z') && !(line[i] == '\0')) {
for (j = i; line[j] != '\0'; ++j) {
// if jth element of line is not an alphabet,
// assign the value of (j+1)th element to the jth element
line[j] = line[j + 1];
}
line[j] = '\0';
}
}
printf("Output String: ");
puts(line);
return 0;
}
输出
Enter a string: p2'[email protected]./
Output String: programiz
该程序从用户那里获取一个字符串输入并存储在 line
变量。然后,使用 for
循环遍历字符串的字符。
如果字符串中的字符不是字母,则将其从字符串中移除,并将剩余字符的位置向左移动 1 个位置。