C 更改数字位置
c++ changing number digits places?
我有一个3位数字,假设n =135。我需要更改数字中的数字,以便我得到不同的数字。在315的结果中将第一个数字放在中间。我认为我要做的第一件事是提取单独的数字,然后我选择了这个
int n = 135;
int a, b, c, x;
a = n / 100;
b = n % 100 / 10;
c = n % 10;
现在我有单独的数字值,但不知道如何将它们全部放在一个变量中以获取x = 315。
编辑:写作后弄清楚了。不知道如何在不选择答案的情况下将帖子标记为解决。这样解决了(如果其他人遇到相同的问题):
x = b * 10 + a;
x = x * 10 + c;
cout << "Changed number: " << x << endl;
乘法是您的朋友。
x = b * 100 + a * 10 + c;
所以,好的。我这样做的方式,如果这不起作用,请纠正我,将其制成字符串,然后重新安排类似的东西。为此,我们可以使用类似的字符串格式库:
string number = to_string(135);
然后,您可以做这样的事情:
char swap;
swap = number[0];
number[0] = number[1];
number[1] = swap;
将交换第一个和第二个项目,将其变为315。其他项目在逻辑上遵循。完成后,只需将字符串转换回INT,这样:
int number = atoi(number.c_str());
相关文章:
- 如何找到数字的位置并使用它们
- 统一位置和属性位置 - 是相同的数字系列吗?
- 数字的总和在奇数,甚至是字符串的位置
- 根据数字在 c++ 中作为矩阵的位置从文件中读取数字
- 计算正确和放错位置的数字
- 如何将数字0-8变成C 的0-8二进制位置
- 你如何在序列中找到数字的位置
- C 更改数字位置
- 我可以读取向量<string>::迭代器的数字位置吗?
- 将一个数字的一个数字与其当前位置相乘,然后使用递归将其和其他数字相加
- C++如何从文件中读取数字并将其分配到数组中的相应位置
- 构建一个程序,将 10 个整数放入数组中并识别重复的数字并输出它们及其位置编号的位置
- 按每行同一位置出现的 4 个数字对文本文件中的 200 行进行排序
- 我需要从用户输入中找到某些数字的位置
- 带有Overload[]运算符的C++MyInteger类,因此索引在位置i返回数字
- (c++)对数组中的重复项进行计数,然后将被计数的数字移动到另一个数组中的相应位置
- 我需要知道如何在c++中将数字四舍五入到小数点后的某个位置
- 找出数组中最小的数字及其位置
- 交换两个数字而不使用额外的空间,如果两个数字都指向相同的位置,则不起作用
- 用户正在输入10个数字,找到最大的负值及其索引/位置