【发布时间】:2021-09-24 08:44:07
【问题描述】:
如果我输入 3 个数字 9 6 3 输出将是 6 6
我正在尝试编写一个代码,它不会显示任何错误但输出更改不会改变
#include<iostream>
using namespace std;
int main () {
int n;
cin>>n;
int arr[n];
for(int i=1;i<n;i++){
cin>>arr[i];
}
for(int i=1;i<n;i++){
int current = arr[i];
int j=i-1;
while(arr[j]>current && j>=0){
arr[j+1]=arr[i];
j--;
}
arr[j+1]= current;
}
for(int i=1;i<n;i++){
cout<<arr[i]<<" ";
}
cout<<endl;
}
【问题讨论】:
-
你知道调试器是什么吗?此外,如果您的代码没有显示任何错误并不意味着您的代码按预期工作
-
arr[0]未初始化且未填充。这是故意的吗? -
arr[j+1]=arr[i];看起来不对。
标签: c++ insertion-sort