你能帮帮我吗?我尝试使用 while 语句,但我无法编写程序。
给定一个整数,例如 12564897,程序必须将其显示为 1-2-5-6-4-8-9-7
你如何在 C++ 中进行检测。非常感谢。
我尝试使用五位整数。
int z,y,x,result,number1,number2,number3,number4,number5;
cout<<"Enter a five digit integer: ";
cin>>result; //read number
cout<<"The number is: "<<result<<endl;
number1 = result / 10000;
x = result / 1000;
number2 = x % 10;
y = result / 100;
number3 = y % 10;
z = result / 10;
number4 = z % 10;
number5 = result % 10;
cout<<"digits are: "<<number1<<"-"<<number2<<"-"<<number3<<"-"<<number4<<"-"<<number5<<endl;
system("pause");
return 0;
最佳答案
我认为最聪明的方法是创建一个除以十(或基数)的循环并打印余数,然后除以十并再次执行。在前代码中:
let a = input
let base = 10
do
{
store a mod base in result
a = (integer) a / base;
}while(a>0)
print result reversed
mod 是余数运算符 (C/C++ 中的 % )
请注意,通过更改基数,您可以获得任何数字表示形式的数字
关于c++ - 如何用 C++ 分隔给定整数的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9645576/