一、使用库函数来判断字符是否为所需数据。
#include<stdio.h>
#include<ctype.h>
//获取数字,s是字符串输入,num是获取的数字输出
void get_number(char* s,char* num)
{
int i = 0;
int j = 0;
while (s[i] != '\0')
{
if (isdigit(s[i]))
{
num[j++]=s[i];
}
i++;
}
}
//获取字母,s是字符串输入,num是获取的字母输出
void get_letter(char* s,char* num)
{
int i = 0;
int j = 0;
while (s[i] != '\0')
{
if (isalpha(s[i]))
{
num[j++]=s[i];
}
i++;
}
}
二、利用ASCII码值来比较字符是否在其数据范围区间。

#include<stdio.h>
//获取数字,s是字符串输入,num是获取的数字输出
void get_number(char* s,char* num)
{
int i = 0;
int j = 0;
while (s[i] != '\0')
{
if (s[i]>='0'&&s[i]<='9')
{
num[j++]=s[i];
}
i++;
}
}
//获取字母,s是字符串输入,num是获取的字母输出
void get_letter(char* s,char* num)
{
int i = 0;
int j = 0;
while (s[i] != '\0')
{
if (s[i]>='a'&&s[i]<='z' || s[i]>='A'&&s[i]<='Z')
{
num[j++]=s[i];
}
i++;
}
}
文章介绍了两种方法从字符串中提取数字和字母。第一种方法利用ctype.h库中的isdigit和isalpha函数,第二种方法通过比较ASCII码值来判断字符是否在数字或字母范围内。这两种方法都遍历字符串,将符合条件的字符添加到新的字符串中。
3万+

被折叠的 条评论
为什么被折叠?



