文章目录
- 【C】C语言判断字符串是否是int型正整数
- 前言
- 一、代码
- 二、结果
【C】C语言判断字符串是否是int型正整数
前言
此程序功能主要是实现:判断在CMD下输入的字符串是是否是int型的正整数。
在判断字符是数值时还可以了解一下isdigit()函数
,可以参考:https://blog.csdn.net/Jiajikang_jjk/article/details/85944714
一、代码
/* 程序功能:判断输入的字符串是否是int型正整数型*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int chk_data(char *num);
#define SIZE 100int main(void)
{char str[SIZE]; //定义一个大小为SIZE的char型数组while (1){printf("input :");scanf("%s", str);if (chk_data(str) == 0){printf("输入数据错误,请重新输入!\n");}else{printf("是数值\n");break;}}printf("%d\n", atoi(str));
}// 子函数
int chk_data(char *num)
{int i;for (i = 0; num[i]; i++) // 遍历形参num(传入实参的大小){if (num[i] > '9' || num[i] < '0') //只要有非数字,就返回错误{printf("传入值含有非数值\n");return 0;}}if (i > 100) //都是数字,但长度超过100位,返回错误{printf("超出了数字长度\n");return 0;}return 1;
}