【发布时间】:2020-01-24 01:47:40
【问题描述】:
这是我第一次发布问题。我希望在一项我从未完成的非常古老的计算机科学任务上获得一些帮助。我不再上课了,只是想看看如何解决这个问题。
读入一个整数(任何有效的 64 位 integer = long long 类型)并输出相同的数字,但插入逗号。
如果用户输入 -1234567890,您的程序应该输出 -1,234,567,890。 Comm作为 应该出现在每三个有效数字之后(如果还有更多数字)开始 从小数点开始,向左移动到更有效的数字。如果数 输入不需要逗号,不要添加任何。例如,如果输入是 234 你 应该输出 234。输入 0 应该产生输出 0。注意上面的例子 该数字可以是正数或负数。您的输出必须保持 输入。
我对编程比较陌生,这就是我能想到的:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
long long n;
cout << "Enter an integer:" << endl;
cin >> n;
int ones = n % 10;
int tens = n / 10 % 10;
int hund = n / 100 % 10;
int thous = n / 1000 % 10;
int tthous = n / 10000 % 10;
cout << tthous << thous << "," << hund << tens << ones << endl;
return 0;
}
原作业禁止使用字符串、数组和向量,因此请不要提供涉及这些的建议/解决方案。 我知道可能需要某种 for 循环才能在必要的地方正确插入逗号,但我只是不知道如何实现这一点。
提前感谢任何提供帮助的人!
【问题讨论】:
-
不相关的有趣事实:
long long并不总是 64 位。 It could be longer.
标签: c++ integer long-integer long-long