这是一位新生写的求位数的程序,为什么这个循出不来了,难道说x不能作为判断的变量吗?真的搞不懂。
3条回答 默认 最新
关注 有bug,我改了一下
bug:原来的程序输入个位数会显示为 2 位数
然后 while 里面的条件要改为 x > 10 ,意思是只要 x 大于 10 循环就一直进行,当 x 小于 10 它自然就结束循环了#include <iostream> using namespace std; int main() { int x, a; cout << "请输入有一个不大于5位的正整数:" << endl; cin >> x; a = x; int i = 1; if (x < 10) { cout << a << "的位数为:" << i << endl; } else { do { i++; x /= 10; } while (x > 10); cout << a << " 的位数为:" << i << endl; } return 0; }
运行结果如下
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥60 pb数据库修改或者求完整pb库存系统,需为pb自带数据库
- ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
- ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
- ¥20 神经网络Sequential name=sequential, built=False
- ¥16 Qphython 用xlrd读取excel报错
- ¥15 单片机学习顺序问题!!
- ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
- ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
- ¥15 相敏解调 matlab
- ¥15 求lingo代码和思路