我试图用循环制作一个数字计数器。我很确定我的代码是正确的,但执行情况与我想要的不同。有人能告诉我我做错了吗?
这是我的代码
#include <iostream>
using namespace std;
int main()
{
long long x,y;
int i;
cout << "Input X : ";
cin >> x;
i=0;
y=x;
while(x>0){
x=x/10;
i++;
cout <<i;
}
cout <<y<<" is made up of "<<i<<" digits."<<endl;
return 0;
}
所以,执行是:
输入X:5000
12345000由4位数字组成
为什么输出与输入不一样?有什么问题?
答案 0 :(得分:4)
1234
前面的12345000
是由于你在while循环结束时有cout <<i
语句。
答案 1 :(得分:0)
#include <iostream>
using namespace std;
int main()
{
long long x,y;
int i;
cout << "Input X : ";
cin >> x;
i=0;
y=x;
while(x>0){
x=x/10;
i++;
}
cout <<y<<" is made up of "<<i<<" digits."<<endl;
return 0;
}
&#13;
现在您的代码将正常运行