精华内容
下载资源
问答
  • c++判断输入是否为整数
    千次阅读
    2018-04-03 23:03:09

    最近遇到一个小问题,判断输入的内容是否为整数。

    具体方法如下:

    首先定义接收内容的字符串 string s;

    调用C++的 getline方法,格式如下:getline(cin,s),getline可以接收空格,遇到换行输入结束。

    然后依次判断字符串中的字符,是否为数字,如果遇到一个非数字的字符,则不是整数。

    具体程序如下:

    bool isDigit(char a) {
    	if (a - '0' == 0 || a - '0' == 1 || a - '0' == 2 || a - '0' == 3 ||
    		a - '0' == 4 || a - '0' == 5 || a - '0' == 6 || a - '0' == 7 ||
    		a - '0' == 8 || a - '0' == 9)
    		return true;
    
    	return false;
    }
    
    void testInteger(string y) {
    	for (int i = 0; i<y.length();i++)//字符串内容是否为整数
    		if (!isDigit(y[i])) {
    		    cout<<"输入内容不是整数......"<<endl;
    		    return;
    		}
    
    	//将字符串转化为数字
    	int num;
    	istringstream t(y);
    	t >> num;
    	cout<<"整数为:"<<num<<endl;
    }
    
    int main(){
        string s;
    	cout << "请输入整数:"<<endl;
    	getline(cin, s);
    	testInteger(s);
    	return 0;
    }
    当然这个也是有缺陷的,没有判断以0开头的情况:0 、00 、000;也没有判断负数的情况;不过实现起来应该都比较简单,有时间再补充吧!

    更多相关内容
  • C++ 判断输入是否为整数

    千次阅读 2021-01-26 22:26:04
    bool isDigit(char a) { if (a - '0' == 0 || a - '0' == 1 || a - '0' == 2 || a - '0' == 3 || a - '0' == 4 || a...i++)//字符串内容是否为整数 if (!isDigit(y[i])) { cout输入内容不是整数......"; return; }
    
    
    bool isDigit(char a) {
    	if (a - '0' == 0 || a - '0' == 1 || a - '0' == 2 || a - '0' == 3 ||
    
    a - '0' == 4 || a - '0' == 5 || a - '0' == 6 || a - '0' == 7 ||
    
    a - '0' == 8 || a - '0' == 9)
    	return true;
    }
    
    void testInteger(string y) {
    
    	for (int i = 0; i<y.length();i++)//字符串内容是否为整数
    
    	if (!isDigit(y[i])) {
    
    		cout<<"输入内容不是整数......"<<endl;
    
    	return;
    
    }
    
    展开全文
  • C++判断用户输入是否为整数整数 判断用户输入是否为整数 不能输入小数 不能输入字母、单词 不能输入文字 不能输入负数 代码: 在这里插入代码片

    C++判断用户输入是否为正整数、整数


    判断用户输入是否为正整数

    • 不能输入小数
    • 不能输入字母、单词
    • 不能输入文字
    • 不能输入负数

    代码:

    #include<iostream>
    #include<algorithm>
    #include<cstring> 
    #include<stdlib.h>  //为了使用 c_str() 函数 
    using namespace std;
    
    //将string转为char数组并判断输入是否为正整数
    int check1(string s){
    	char a[s.length()];
    	strcpy(a,s.c_str());
    	int i; 
    	for(i = 0;i<s.length();i++){
    		//如果不是数字
    		if(!isdigit(a[i])){
    			return -1; 
    		}
    	}
    	return 0; 
    }
    
    //string 转 int
    int s2i(string s)
    {
    	return atoi( s.c_str() );
    }
    

    调用示例:

    	string n0;//判断用户输入用
    	int n;//真正存储的变量
        cout<<"请输入:"<<endl;
        cin>>n0;
        //判断输入的n0是否符合要求
    	while(check1(n0)){
    		cout<<"请输入正整数,不要输入负数或者小数或字母:"<<endl;
    		cin>>n0;
    	}
        n = s2i(n0);//string转为int存储 
    

    判断用户输入是否为正数(可以为小数)

    • 不能输入字母、单词
    • 不能输入文字
    • 不能输入负数

    代码:

    #include<iostream>
    #include<algorithm>
    #include<cstring> 
    #include<stdlib.h>  //为了使用 c_str() 函数 
    using namespace std;
    
    //将string转为char数组并判断输入是否为正数
    int check2(string s){
    	char a[s.length()];
    	strcpy(a,s.c_str());
    	int i; 
    	for(i = 0;i<s.length();i++){
    		//如果不是数字且不是小数点 
    		if((!isdigit(a[i])) && (a[i]!='.')){
    			return -1; 
    		}
    	}
    	return 0; 
    }
    
    //string 转 double
    double s2d(string s)
    {
    	return atof( s.c_str() );
    }
    

    调用示例:

    	string n0;//判断用户输入用
    	double n;//真正存储的变量
        cout<<"请输入:"<<endl;
        cin>>n0;
        //判断输入的n0是否符合要求
    	while(check2(n0)){
    		cout<<"请输入正数,不要输入负数或字母:"<<endl;
    		cin>>n0;
    	}
        n = s2d(n0);//string转为double存储 
    
    展开全文
  • 关于素数的算法是程序竞赛比较重要的数论知识,我们来看通常会使用的几个算法。 我们先来复习几个基本概念: ... 请输入判断数字:; cin >> Input; IsPrime(Input); cin.get(); cin.get(); retur
  • C++判断用户输入是否为数字

    千次阅读 2015-07-07 23:06:37
    一次性获取用户当前输入(他输入的可能是1位数也可能是2位数或者字母等)并判断是否为严格意义上的数字,主要是为了区分数字和字母。如果不是数字则返回重输,如果是,使用该int 型数据做其他操作。 主要思路是采用...
    
    
    #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)


    展开全文
  • 返回值【输入是字符char】 isalnum() 如果是字母或数字,返回true isalpha() 如果是字母,返回true isdigit() 如果是数字,返回true islower() 如果是小写字母,返回true ispunct() ...
  • 【问题描述】输入一个整数判断是否为回文数!回文数是不论从左向右顺读,还是从右向左倒读,结果都是一样的,例如151,15351. 【输入形式】从键盘输入一个整数 【输出形式】判断是否回文数 【样例输入】 151 ...
  • C++判断一个数是否为整数

    万次阅读 2016-02-04 18:20:06
    运行下面的代码 #include #... 将代码改一下,就能判断一个double类型的数是否整数 #include #include using namespace std; int main() { double n; while(cin>>n) { if(abs(round(n) - n) ) { cout<<"is an integer"<
  • 正在学习编程中,有错误请指出 ...//判断输入整数是否为回文数 int main() { int X; cout << "请输入一个整数:"; cin >> X; int temp = 0; int Y = 0; int Z = X; while (X > 0) {
  • if (cin.good()) //判断是否正常 { break; } else { cin.clear(); //如果不正常,把流重置成正常状态 cin.ignore(); //清空缓存 cout << "输入错误的字符,请重新输入:" << ...
  • cin; 怎么判断他是不是其他字符串之类; cin; 怎么判断他是不是其他字符串之类; cin; 怎么判断他是不是其他字符串之类
  • C++检测输入是否整数

    万次阅读 2017-09-06 16:12:17
    学校一道zz题但是检测合法性输入这里费了好大功夫。 1、 猜价格游戏 编写C++程序完成以下功能: (1) 假定有一件商品,程序用随机数...(提示及要求:1,要求使用C++输入输出方式(cin, cout),不能使用
  • 前天做某公司笔试题的时候,其输入格式是多行数字,每行以空格分隔符,以换行符号结束输入到多个数组。在JAVA中有相应的函数直接将一行拆成数组,感觉在C++中这中输入方式还是挺奇怪的,今天想出一种解决方式。 ...
  • 2. 判断是否为数字 isdigit可以判断一个字符是否为数字。是返回1,不是返回0。 另外,在apple平台的clang++中,还有isnumber方法,查看函数签名,跟isdigit相同,最后的效果也与isdigit相同。 3.判断是否数字或...
  • 判断是否整数

    2013-10-30 08:39:04
    判断是否整数de 代码初学者看的东方的
  • C++控制台程序判断输入数字

    千次阅读 2017-08-20 10:20:41
    C++标准库中的iostream库的基础是用于表示输入流的istream类型和用于表示输出流的ostream...有时要求输入的数据必须是数字,此时就需要在处理输入数据之前对其进行判断。 1 通过istream类的成员函数对输入数据进行判断
  • 判断输入年份是否为闰年 C++

    千次阅读 2021-07-25 12:33:54
    判断一年是否为闰年 两种方法: 下面这种用多个if语句嵌套判断 #include<iostream> using namespace std; int main() { int year; bool leap; cout << "请输入年份:" << endl; cin >> ...
  • 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: 完数又称...n 结果: 总结 提示:这里对文章进行总结: 例如:以上就是今天要讲的内容,本文仅仅简单介绍了判断是否为完数(C++)的求法。
  • C/C++ 判断一个字符串是否为数字

    千次阅读 2021-12-05 21:42:30
    就是遍历判断这个字符串,每个字符十分符合ASCii数字的范围。 摘抄如下: bool AllisNum(string str) { for (int i = 0; i < str.size(); i++) { int tmp = (int)str[i]; if (tmp >= 48 && ...
  • 假设用char ch接收用户输入 判断字母: 写字母:if((ch>='a')&&(ch 写字母:if((ch>='A')&&(ch ...判断数字: if((ch>='0')&&(ch 给段程序明白: #include #include int main() { char ch;
  • C++ 判断一个字符是否为数字

    万次阅读 2019-03-14 14:48:05
    1.直接判断 #include &lt;stdio.h&gt; int main() { char c; c = getchar();//读取一个字符。 if(c &gt;='0' &amp;&amp; c&lt;='9')printf("是数字\n"); else if(c &...
  • C++判断字符是否数字

    千次阅读 2019-05-03 20:42:39
    //判断字符是否数字 if(isdigit(str[j])){ count++; } } cout<<count<<endl; } return 0;...isalnum() 用来判断一个字符是否为英文字母或数字,相当于 isalpha© || isdigit©...
  • c++判断字符是否为空格或数字

    千次阅读 2020-07-29 19:56:45
    判断字符是否为空格的函数: isspace() 标准的空白字符包括: ' ' (0x20)space (SPC) 空格符 '\t'(0x09)horizontal tab (TAB) 水平制表符 '\n'(0x0a)newline (LF) 换行符 '\v'(0x0b)vertical tab (VT) 垂直制表...
  • C++判断输入的正整数是否为素数

    千次阅读 2015-03-28 21:13:30
    #include using namespace std; int main() { int i; int count = 0; cout while (cin >> i&&cin.get() == '\n')...//赋初值零,在下次计算时可以从零开始,不然将在上一次的count下继续运算 for (int n = 2
  • C++编程第一步:如何判断一个数字是不是整数? 代码如下: #include<iostream> using namespace std; float A(float a) { if(a-(int)a==0) return 0; else { return 1; } } int main() { float a; c.....
  • 一、直接判断 #include <iostream> using namespace std; int main() { char a=0; cin>>a; if (a>='a'&&a<='z') { cout<<"lower case"; } else if(a>='A'&&a<...
  • C++判断输入的数据类型是否正确

    千次阅读 多人点赞 2019-11-23 11:25:09
      在一个程序中,有的时候我们需要用户输入一个int类型的数据,但是用户偏偏输入字母加数字,这个时候用户就输入错误,那么我们的程序应该怎样处理这种错误呢? 可以使用cin.good()函数和cin.fail()函数来判断。 ...
  • C++判断是否为字母和数字

    千次阅读 2019-05-08 10:59:18
    (2)isdigit():数字返回非0,非数字返回0; (3)isalpha():字母返回非0,非字母返回0; (4)使用for循环对string的每个元素进行判断。 /**************************** * 文件名:[作业] * 作者:〈漆黑〉 * ...
  • C++ 判断字符串是否全是数字

    千次阅读 2020-08-20 15:03:46
    在实际的工作中,需要提取程序中的字符串信息,但是程序中经常将一些数字当做字符串来进行处理,例如表盘的刻度信息,这时候就需要判断字符串是否全为数字,来进行真正意义上的字符串提取。下面介绍了判断字符串是否...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 148,841
精华内容 59,536
关键字:

c++判断输入是否为整数

c++ 订阅
友情链接: AVR_LCD.rar