gpt4 book ai didi

c++ - C++ 中的动态数组(用指针表示)- 输入元素?

转载 作者:太空宇宙 更新时间:2023-11-04 12:51:25 26 4
gpt4 key购买 nike

我有一个家庭作业任务,我应该创建一个数组并仅使用指针实现冒泡排序算法。我创建了数组,但是如果我想输入 3 元素,即如果用户输入 n = 3,程序不允许我输入第三个数字。我想问一下为什么会这样?

提前致谢。

#include <iostream>
using namespace std;
int *n = new int ;
int main()
{
cout<<"Vavedete broya na chislata:"<<' ';
cin>>*n;
int *arr = new int[*n];
cout<<"Vavedete elementite:"<<endl;
int *i=new int;
for(*i=0; *i<*n; *i++)
{
cin>>*(arr+*i);

}
return 0;
}

最佳答案

“*”和“++”运算符具有相同的优先级,但关联性是从右到左。您正在取消引用循环中未使用的 i++。尝试:

#include <iostream>
using namespace std;
int *n = new int ;
int main()
{
cout<<"Vavedete broya na chislata:"<<' ';
cin>>*n;
int *arr = new int[*n];
cout<<"Vavedete elementite:"<<endl;
int *i=new int;
for(*i=0; *i<*n; (*i)++)
{
cin>>*(arr+*i);

}
return 0;
}

关于c++ - C++ 中的动态数组(用指针表示)- 输入元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48920060/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com