c语言判断字符串是否为数字
作者:野牛程序员:2023-12-02 18:09:18C语言阅读 3105
使用C语言判断字符串是否为数字可以通过以下方法实现:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int isNumeric(const char *str) {
int i = 0;
// 处理可能的正负号
if (str[i] == '+' || str[i] == '-') {
i++;
}
int dotCount = 0; // 记录小数点出现的次数
// 检查剩余部分的字符
while (str[i] != '\\0') {
// 检查是否为数字
if (str[i] >= '0' && str[i] <= '9') {
i++;
} else if (str[i] == '.') {
// 允许一个小数点
if (dotCount == 0) {
dotCount++;
i++;
} else {
return 0; // 多个小数点,不是数字
}
} else {
return 0; // 非数字字符
}
}
return 1; // 字符串是数字
}
int main() {
const char *str1 = "12345";
const char *str2 = "-123.45";
const char *str3 = "12a34";
if (isNumeric(str1)) {
printf("%s 是数字\\n", str1);
} else {
printf("%s 不是数字\\n", str1);
}
if (isNumeric(str2)) {
printf("%s 是数字\\n", str2);
} else {
printf("%s 不是数字\\n", str2);
}
if (isNumeric(str3)) {
printf("%s 是数字\\n", str3);
} else {
printf("%s 不是数字\\n", str3);
}
return 0;
}上述代码定义了一个函数isNumeric,该函数接受一个字符串作为参数并返回一个整数,指示该字符串是否表示一个数字。在main函数中,使用这个函数来检查不同的字符串。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

