-
2021-12-05 09:58:26
定义一个函数f来判断整数的位数,用循环来实现。对一个大于0的int整数除10,每次做除法,计数器就+1,直至整数位为0。计数器t所得到的便是这个整数的位数。
#include<iostream> using namespace std; int f(int n){ int t; for(t=0;n>0;t++) { n/=10; } return t; } int main(){ int n; cout<<"输入一个整数,判断位数:"; cin>>n; cout<<"位数为:\n"<<f(n)<<endl; return 0; }
更多相关内容 -
c++基础题:判断某整数是正整数、负整数还是零
2020-08-01 07:46:13判断某整数是正整数、负整数还是零 题目描述 输入一个整数,判断该数是正整数、负整数还是零。 输入 输入一个整数。 输出 如果是正整数,输出’+’;如果是负整数,输出’-’;如果是零,输出’0’。 样例输入 -360 ... -
C++判断用户输入是否为正整数、整数
2020-11-13 09:42:01C++判断用户输入是否为正整数、整数 判断用户输入是否为正整数 不能输入小数 不能输入字母、单词 不能输入文字 不能输入负数 代码: 在这里插入代码片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存储
-
C++超长正整数的减法
2021-12-09 16:42:07编写程序实现两个超长正整数(每个最长80位数字)的减法运算。 【输入形式】 从键盘读入两个整数,要考虑输入高位可能为0的情况(如00083)。 1.第一行是超长正整数A; 2.第二行是超长正整数B; 【输出形式】 ...【问题描述】
编写程序实现两个超长正整数(每个最长80位数字)的减法运算。
【输入形式】从键盘读入两个整数,要考虑输入高位可能为0的情况(如00083)。
1. 第一行是超长正整数A;
2. 第二行是超长正整数B;
【输出形式】
输出只有一行,是长整数A减去长整数B的运算结果,从高到低依次输出各位数字。要求:若结果为0,则只输出一个0;否则输出的结果的最高位不能为0,并且各位数字紧密输出。
【输入样例】
234098
134098703578230056
【输出样例】
-134098703577995958//超长正整数的减法 #include<stdio.h> #include<string.h> #include<iostream> int c[100]; int judge(char a[], char b[])//判断前后位数 { int i,j; j=strlen(a); if (strlen(a) < strlen(b)) { return 0; } else if (strlen(a) > strlen(b)) { return 1; } for (i = 0; i < j; i++)//此时两个数的位数相同 { if (a[i] < b[i]) { return 0; } } return 1; }//结果大于等于零返回1,结果小于零返回0 void minus(char a[], char b[], int k1, int k2) { int i, x, y; x=strlen(a); y=strlen(b); char k; for (i = 0; i<k1; i++, k1--) { k = a[i]; a[i] = a[k1]; a[k1] = k; } for (i = 0; i<k2; i++, k2--) { k = b[i]; b[i] = b[k2]; b[k2] = k; }//讲两个数位数倒过来排序 for (i = 0; i<x; i++) { if (i >= y) { c[i] = a[i] - '0'; }//a比b的位数大时的位数不变 else { c[i] = a[i] - b[i]; }//a比b的位数小或相等时相减 } for (i = 0; i<x; i++) while (c[i]<0) { c[i] += 10; c[i + 1] -= 1; }//小于0时借1位 } int main() { int i, j, k1, k2; char a[100], b[100]; gets(a); gets(b); k1 = strlen(a) - 1; k2 = strlen(b) - 1; if (judge(a, b))//非零为true,零为false { minus(a, b, k1, k2); } else { std::cout<<"-"; minus(b, a, k2, k1); } i = 99; while (c[i] == 0 && i != 0) { i--; }//计算c的位数 for (j = i; j >= 0; j--) { std::cout<<c[j]; }//倒着输出c }
-
C++求四个正整数最大公约数的方法
2020-12-26 01:42:48本文实例讲述了C++求四个正整数最大公约数的方法。分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * 完成日期:2012 年 11 月 16 日 * 版 本 号:v1.0 * * 输入描述: 输入四个正整数,输出其最大公约数。 ... -
C++ 判断完数
2020-10-29 18:48:08请判断正整数n是否为完数。已知一个数如果恰好等于除它本身外的所有因子之和,这个数就称为完数。此程序要求编写函数bool wanshu(int n),判断n是否为完数,若n是,则函数返回true;否则返回false。然后主函数通过该... -
判断正整数n的各位数字中是否包含数字3或4
2020-02-22 18:40:07正整数n的各位数字中是否包含数字3或4,是则返回TRUE,否则返回FALSE。 // 判断整数n的各位数字中是否包含数字3或4 bool Valid(int n) { if(1<=n&&n<=9) { if(n==3||n==4) { return true; } ... -
c++实现长正整数的求和
2022-03-27 14:28:49c++实现长整数求和 -
C++(33)—判断是否为两位数
2021-05-19 21:17:04判断一个正整数是否是两位数(即大于等于10且小于等于99)。 输入 一个正整数,不超过1000。 输出 一行。若该正整数是两位数,输出1,否则输出0。 样例输入 54 样例输出 1 #include<iostream> ... -
C++编程小题目 判断一个正整数是不是素数
2019-09-03 18:22:49目录1.判断一个正整数是不是素数2.输出100以内所有的素数 由于该题的思想与100以内的思想很像,故这里也将100以内的所有素数拿来进行对比 ...而判断正整数是不是素数部分和判断100以内的所有素数的方式方法基本一... -
正则文本框只能输入正整数
2021-01-19 16:48:02js判断输入是否为正整数、浮点数等数字的函数代码JavaScript正则表达式校验非零的正整数实例jquery ...判断用户输入的是否为正整数(两种方法)JavaScript正则表达式校验非正整数实例C++初学者之根据输入的任何一个正整数... -
C++如何判断一个数字是否为质数
2020-12-31 20:45:12关于素数的算法是程序竞赛比较重要的数论知识,我们来看通常会使用的几个算法。 我们先来复习几个基本概念: ... 请输入要判断的数字:; cin >> Input; IsPrime(Input); cin.get(); cin.get(); retur -
输入一个正整数,判断是不是素数(C++)
2011-04-19 14:59:28输入一个正整数,判断是不是素数(C++) 设和和我一样的初学者看。 -
C++练习10:判断完全数
2021-04-14 10:44:46C++练习10:判断完全数题目方法1 题目 如果一个数它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身,则称该数为“完全数” 。 例如:第一个完全数是6,它有约数1、2、3、6,除去它本身6外... -
【无标题】C++判断一个整数是几位数
2022-04-10 00:30:34#include <iostream> using namespace std; int main() { long long int a,b=0;//这里的定义看情况而定. cout<<"请输入一个数:"; cin>>a; while(a!=0) { b++; a=a/10;...e... -
C++判断输入内容是否为整数
2018-04-03 23:03:09最近遇到一个小问题,判断输入的内容是否为整数。具体方法如下:首先定义接收内容的字符串 string s;调用C++的 getline方法,格式如下:getline(cin,s),getline可以接收空格,遇到换行输入结束。然后依次判断字符... -
C++循环结构实例:判断正整数是否素数
2019-04-05 11:29:16看了很多人写的,发现都没考虑1,φ(>ω<*) 我发下自己写叭,有什么问题可以留言(づ ̄3 ̄)づ╭❤~ ..."请输入一整数:"; cin>>m; if (m==1)//首先判断是否为1 cout&l... -
输入一个正整数,求位数c++
2021-07-23 10:03:39while: #include<bits/stdc++.h> using namespace std; int main() { int a,x=0; cin>>a; while(a) { a/=10; x++; } cout<<x; return 0; } for: #include<... cin>. -
C++判断输入的正整数是否为素数
2015-03-28 21:13:30cout 请输入一个正整数: "; while (cin >> i&&cin.get() == '\n') { if (i )cout 请输入一个正整数: "; else { count = 0;//赋初值为零,在下次计算时可以从零开始,不然将在上一次的count下... -
C++编程第一步:判断一个数字是不是整数
2019-12-02 11:16:11C++编程第一步:如何判断一个数字是不是整数? 代码如下: #include<iostream> using namespace std; float A(float a) { if(a-(int)a==0) return 0; else { return 1; } } int main() { float a; c..... -
C++:判断键盘输入的两个正整数是否为互质数
2019-04-06 11:08:18公因数只有1的两个非零自然数,叫做互质数。(所以可以用辗转相除法) 在这里,我就介绍一种方法,至于其他的,就自行去搜下叭ヾ(=・ω・=)o ..."\n请输入两个正整数 m,n:"; cin>>m>>... -
C++ 判断一个 int 型整数是否为 2 的 N 次方(幂次)
2021-11-16 16:59:47判断一个整数是否为2的幂次方法有以下几种: 1.循环除2 这是最简单最好理解的方式。对于一个数如果是2的幂次,则其肯定可以被2一直整除直到其值为1。 所以可以通过一个while循环判断: void judge(int b) { while ... -
C/C++语言:依次取出一个正整数的各位数字,及其变种形式
2022-03-09 21:13:19C/C++语言:依次取出一个正整数的各个数字,及其变种形式 -
c++实现判断一个整数是否为素数
2020-08-19 16:08:00bool is_prime(int n){ for(int i=2;i*i<=n;i++){ if(n%i==0) return false; } return n!=1; } -
c++判断输入类型是否为整数,,
2017-09-27 05:14:15cin; 怎么判断他是不是其他字符串之类; cin; 怎么判断他是不是其他字符串之类; cin; 怎么判断他是不是其他字符串之类 -
判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。
2015-08-16 11:15:51计算机编程题目:判断输入的任何一个正整数n,是否等于某个连续正整数序列之和。(要求多次输入直到碰到输入的数字小于1时程序退出。) C++语言编写的代码 -
1017: 判断正整数位数
2020-02-21 21:01:47给定一个不多于5位的正整数,判断它是几位数,并输出。 输入 一个不多于5位的正整数。 输出 输出正整数的位数,单独占一行。 样例输入 Copy 111 样例输出 Copy 3 程序代码如下: #include<iostream> ... -
判断输入整数是否为回文数 c++
2021-08-24 10:37:03正在学习编程中,有错误请指出 ...//判断输入整数是否为回文数 int main() { int X; cout << "请输入一个整数:"; cin >> X; int temp = 0; int Y = 0; int Z = X; while (X > 0) { -
C++:判断两个整数是否为倍数对
2019-11-13 09:11:07编写函数fun,判断两个正整数是否为倍数对,在主函数中读取两个正整数,调用函数,在主函数输出判断结果。(注意,输入的两个正整数不区分大小顺序) #include <iostream> using namespace std; int fun(int... -
C++ 从大到小输出正整数的全部质因子
2021-10-09 10:54:57要求:输入一个正整数n,按从小到大输出它的全部质因子,如果n为素数则输出n。如输入12,输出2 2 3。输入7,输出7 思路:从2开始对输入整数n进行整除判断,能整除的就是质数,将其输出,然后将n变为整除后的结果,...