【第22期】观点:IT 行业加班,到底有没有价值?

C++判断用户输入是否为数字?

原创 2015年07月07日 23:06:37
#include <iostream>
#include <string>
#include <stdlib.h>
using namespace std;
 bool is_number(string str)
  {
     if(str.c_str()[0]!=45)
     {
        for(int i = 0; i < str.length(); i++)
        {
           if( str.c_str()[i] < '0' || str.c_str()[i] > '9' )
           { return false;}
         }
        return true;
     }
     else
     {
       for(int i = 1; i < str.length(); i++)
        {
           if( str.c_str()[i] < '0' || str.c_str()[i] > '9' )
           { return false;}
        }
       return true;
     }
 }
void main()
{ int a=0;
  const char *s;
  cout<<"请输入数据a:";
  string str;
  cin>>str;
  if(is_number(str))
  {
    cout<<"你输入的是数字!"<<endl;
    s=str.c_str();
    a=atoi(s);
    a=a+1;
    cout<<"a+1="<<a<<endl;
  }
  else cout<<"你输入的不是数字!";
}


一次性获取用户当前输入(他输入的可能是1位数也可能是2位数或者字母等)并判断是否为严格意义上的数字,主要是为了区分数字和字母。如果不是数字则返回重输,如果是,使用该int 型数据做其他操作。

主要思路是采用string类的成员函数c_str()实现。对于成功判断是数字以后如果要使用该数字可以再调用atoi(const char*s)


版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

C++如何判断一个string字符串,是否是数字

#include    #include    #include    using namespace std;           bool isnum(string s)   {  ...

约瑟夫环(C++单项循环链表)

约瑟夫问题的一种描述是:          编号为1,2,…,n的n个人按顺时针方向围坐一圈,每人持一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

c++使用库函数判断字符是否是数字

c++使用库函数判断字符是否是数字,字母

c++中怎么判断一个string类型的字符串变量是否为数字?

#include #include #include using namespace std; bool isnum(string s) { stringstream sin(...

C++判断string是不是数字

#include    #include    using namespace std;      bool isNum(string str);   int main( )   {   ...

C++判断string是不是数字|C++获取数组长度

#include #include using namespace std; // 判断字符串是不是数字 bool isNum(string str) { stringstream s...

利用正则表达式判断字符串是否为数字(c++)

#include using namespace std; bool is_number( string str_ ) { regex pattern( "^[\\d]+[\.]?[\\d+]...

C++之string类型详解

from:http://citycowboy.blog.sohu.com/50058804.html 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来...

C++判断字符串是否为数字

思路1: 挨个字符判断其ASCII码是否属于数字范围 48--57 转为ASC码 :int i=(int)a; //a是字符 C++实例:

c++中怎么判断一个string类型的字符串变量是否为数字?

#include #include #include using namespace std; bool isnum(string s) { stringstream s...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)