c判断是不是为数字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c判断是不是为数字相关的知识,希望对你有一定的参考价值。
#include <stdio.h>#include <string.h>
void main()
int a,i;
char str[100];
scanf("%s",str);
a=strlen(str);
for(i=0;i<a;i++)
if (str[i]>'9' || str[i]<'0')
printf("不是数字");
break;
if (i==a)
printf("是数字");
先定义字符串str[100](这里也可以用指针),a是求这个字符串长度,下面就是一个循环,判断每一个字符是否是数字,只要有一个不是数字,立马跳出循环,说明不是数字;如果所有的字符判断完都是数字,那就是数字了。 参考技术A 可以用isdigt函数判断,比如一个变量为a,isdigt(a)返回值是0说明是数字,否则不是数字。自己写的话需要将a的每一位都拆分,然后判断每一位是否是在0~9之间 参考技术B 判读一个字符c是否为数字:
void func(char c)
if((c>=48)&&(c=<57))
printf("%c is num\n",c);
else
printf("%c not is num\n",c);
多个字符p是否是数字字符:
void func(char *p)
while(*p!='\0')
if((*p>57)||(*p<48))
printf("%s not is num string \n",p);
return 1;
p++;
printf("%s is num string \n",p);
return 0;
参考技术C if(c >= 0 && c <=9)
printf("c 是数字\n");
else
printf("c 不是数字\n");
C#怎么判断输入内容是不是为数字
方案一:Try...Catch(执行效率不高)///
/// 名称:IsNumberic
/// 功能:判断输入的是否是数字
/// 参数:string oText:源文本
/// 返回值: bool true:是 false:否
///
///
///
private bool IsNumberic(string oText)
try
int var1=Convert.ToInt32 (oText);
return true;
catch
return false;
方案二:正则表达式(推荐)
a)
using System;
using System.Text.RegularExpressions;
public bool IsNumber(String strNumber)
Regex objNotNumberPattern=new Regex("[^0-9.-]");
Regex objTwoDotPattern=new Regex("[0-9]*[.][0-9]*[.][0-9]*");
Regex objTwoMinusPattern=new Regex("[0-9]*[-][0-9]*[-][0-9]*");
String strValidRealPattern="^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$";
String strValidIntegerPattern="^([-]|[0-9])[0-9]*$";
Regex objNumberPattern =new Regex("(" + strValidRealPattern +")|(" + strValidIntegerPattern + ")");
return !objNotNumberPattern.IsMatch(strNumber) &&
!objTwoDotPattern.IsMatch(strNumber) &&
!objTwoMinusPattern.IsMatch(strNumber) &&
objNumberPattern.IsMatch(strNumber);
b)
public static bool IsNumeric(string value)
return Regex.IsMatch(value, @"^[+-]?\\d*[.]?\\d*$");
public static bool IsInt(string value)
return Regex.IsMatch(value, @"^[+-]?\\d*$");
public static bool IsUnsign(string value)
return Regex.IsMatch(value, @"^\\d*[.]?\\d*$");
参考技术A 判断是不是数据,要不是就表示没有选择,则从隐藏域里读出来
以上是关于c判断是不是为数字的主要内容,如果未能解决你的问题,请参考以下文章