作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
用户将未知数量的整数放入数组中(动态)。程序必须以相反的顺序输出这些数字,例如:整数倒序排列。例子。 324,12,5987 --> 423, 21, 7895例子。 123, 100 --> 321, 1(去掉两个 0)
我不确定我是否走在正确的道路上,但我真诚地希望有人能给我建议一个解决方案。现在,我收到“段错误”错误 - 是否与数组空间有关?
这是我目前的代码:
int main()
{
int n,sk,rez;
int *a;
cout << "How many integers will there be? : " << endl;
cin >> sk;
a = new int[sk];
for (int i = 0; i < sk; i++)
{
cout << "Write an integer: " << endl;
cin >> n;
a[i] = n;
}
for (int i = 0; i < sk; i++)
{
// Gets amount of the digits of every integer.
int count, new_num = 0;
int* skaits;
while(a[i] > 0)
{
count++;
a[i] = a[i]/10;
}
skaits = new int [count];
for (int j = 0; j<count; j++)
{
skaits[j] = count; // Exmp. I write 324,12 , loop calculates 3 and 2 and puts that amount in an array.
// Loop to output integers in reverse order. Exmp. 324,12,5987 --> 423, 21, 7895
for (int k = 0; k<skaits[j]; k++)
{
new_num = new_num * 10 + (a[k] % 10);
a[k] = a[k]/10;
}
cout << new_num << endl;
}
}
delete []a;
return 0;
}
最佳答案
作为一般规则:尝试使您的代码更加模块化。我希望找到一个函数来计算单个数字的倒数。这更容易编写,也更容易调试,因为您将两个任务分开:收集数据、反转整数。
无论如何,深入查看您的代码:似乎在您计算了 count
之后,变量 a[i]
的内容已被销毁......( a[i]==0
退出 while
循环)。
反转十进制数的简单方法:
int reverse(int n) {
int m=0;
while (n>0) {
m *= 10;
m += n%10;
n /= 10;
}
return m;
}
关于c++ - 逆序输出数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33957120/
序 大家好呀,我是summo,这次来写写我在上班空闲(摸鱼)的时候做的一个小网站的事。去年阿里云不是推出了个活动嘛,2核2G的云服务器一年只要99块钱,懂行的人应该知道这个价格在业界已经是非常良心了
我尝试根据给定的级别顺序(BFS 顺序)构造 BST。我知道这是可能的,但我不知道我该怎么写。问题是我必须使用 BFS 序列。所以,我不能在这里使用递归,我必须迭代地编写我的程序......我发现这有
我是一名优秀的程序员,十分优秀!