C语言如何判断一个字符是否为数字
·
当输入一个字符串中是否含有数字时,也即 0~9。我们可以使用C语言中的isdigit() 函数用来判断。
该函数需要引用ctype.h文件
语法:int isdigit(char c);
参数 c 表示要检测的字符。
例1:输出一个字符串中所含有的全部数字
实现方法:获取一个字符串,放在字符数组中,判断每个字符是否是数字,如果满足则输出该数字。
代码:
#include <stdio.h>
#include<string.h>
#include <ctype.h>
int main()
{
char str[50] = { 0 };
int i, len;
gets(str);
len = strlen(str);
for (i = 0; i < len; i++)
{
if (isdigit(str[i]))
{
printf("含有数字:%c\n",str[i]);
}
}
return 0;
}
例2:将一个字符串的数字全部替换成某个字母
实现方法:获取一个字符串和字符c,将字符串放到字符数组中,判断每个字符是否为数字,不满足则将该字符放到新的数组中,满足则将字符c放到新的数组中,最后输出新的字符数组。
代码:
#include<stdio.h>
#include<string.h>
#include "ctype.h"
int main()
{
char str[100] = "", s[100] = "", c = ' ';
int i = 0, j = 0;
gets(str);
c = getchar();
while (str[i] != '\0')
{
if (isdigit(str[i])) {
s[j] = c;
j++;
}
else {
s[j] = str[i];
j++;
}
i++;
}
puts(s);
return 0;
}
更多推荐
已为社区贡献4条内容
所有评论(0)