一个C++问题需要大侠解决……
时间:2011-12-24
来源:互联网
#include <iostream>
using namespace std;
int main()
{
cout<<"please input a number :";
double n;
int i=1;
cin>>n;
for(int z=10;n/z!=0;z*=10)
{
i++;
}
cout<<"the number is "<<i<<" wei shu zi..."<<endl;
return 0;
}
作者: chiedey 发布时间: 2011-12-24
作者: mingliang1212 发布时间: 2011-12-24
#include <iostream> using namespace std; int main() { cout<<"please input a number :"; double n; int i=1; cin>>n; for(int z=10;n/z!=0;z*=10) // 不要拿 double型的数据(n/z的结果) 和 0 进行相等(或不等)比较 { i++; } cout<<"the number is "<<i<<" wei shu zi..."<<endl; return 0; } // 既然是不限位数,问题就不是那么好解决,可以参考以下这个,然后再修改 #include <iostream> using namespace std; int main() { cout<<"please input a number :"; long long n; // 改动这个地方,long long 类型,但是位数有限制 int i=1; cin>>n; for(int z=10;n/z!=0;z*=10) { i++; } cout<<"the number is "<<i<<" wei shu zi..."<<endl; return 0; }
作者: seucs 发布时间: 2011-12-24
作者: dw903632958 发布时间: 2011-12-24
作者: chiedey 发布时间: 2011-12-24
他说long long是不合法的!
作者: chiedey 发布时间: 2011-12-24
作者: songjinshi 发布时间: 2011-12-24
作者: chiedey 发布时间: 2011-12-24
long long之后位数还好搜有限制啊,这该怎么办啊??疑惑
char str[100];
std::cin>>str;
//在这里检测输入是不是合法的
std::cout<<strlen(str);
作者: mingliang1212 发布时间: 2011-12-24
作者: chiedey 发布时间: 2011-12-24
作者: Zoelov 发布时间: 2011-12-24
if(str[i] == '\0')
break;
else if(str[i] >= '0' && str[i] <= '9')
{
n++;
}else
{
std::cout<<"erro input!";
break;
}
作者: mingliang1212 发布时间: 2011-12-24
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28