用c语言写一个函数,str是一个用户输入的字符串,该字符只由数字和字母组成,你需要将字符串的数字去除并返回,如a1b2c3返回abc
时间: 2024-10-16 20:15:11 浏览: 35
你可以创建一个C语言函数,使用`isalnum()`函数来检查每个字符是否为字母或数字。如果不是,就跳过它。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含ctype.h库,用于处理字符类别
#define MAX_LENGTH 100 // 定义最大长度,可以根据需要调整
char* remove_digits(char* str) {
if (str == NULL || *str == '\0') { // 检查字符串是否为空
return str;
}
int length = strlen(str); // 获取字符串长度
char new_str[MAX_LENGTH] = ""; // 新字符串,用于存储结果
int new_length = 0; // 记录新字符串的长度
for (int i = 0; i < length; i++) {
if (isalnum(str[i])) { // 如果字符是字母或数字
new_str[new_length++] = str[i]; // 添加到新字符串
}
}
new_str[new_length] = '\0'; // 结束字符串,并添加空字符
return new_str;
}
int main() {
char input[100];
printf("请输入一个只包含数字和字母的字符串:");
fgets(input, sizeof(input), stdin);
input[strcspn(input, "\n")] = '\0'; // 移除fgets获取的换行符
char* result = remove_digits(input);
printf("去除数字后的字符串是:%s\n", result);
free(result); // 释放内存
return 0;
}
```
当你运行这个程序并输入字符串后,它会打印出移除所有数字后的结果。
阅读全文