错误太多了,你以为const int n=n1就能绕开"数组长度必须是常量"的规定了?常量,必须在编译期间确定数值,而你这个n1是输入的,怎么可能是常量?老老实实用动态数组吧。还有,最好别用万能头。
const修饰的结果是一个常变量,也就是说,本质上还是一个变量,你是要malloc开辟试试吧
#include <iostream>
int main()
{
const int N = 10;
int a[N], n;
std::cin >> n;
for (int i = 0; i < n; i++)
std::cin >> a[i];
int x;
std::cin >> x;
for (int i = x-1; i < n - 1; i++)
a[i] = a[i + 1];
for (int i = 0; i < n - 1; i++)
std::cout << a[i] << ' ';
return 0;
}
把a[n]改成a[100000]就好了吧