#include
#include
#include
#include
#include
#include
using namespace std;
int main () // 数组插入
{
const int N = 99;
double power[N];//没有赋初值
int powerCount = 0;// 定义数组长度
double insertpower; //定义插入数
int insert_index = 0; //定义插入数下标
power[powerCount++] = 45; // 数组变化
power[powerCount++] = 32;
power[powerCount++] = 56;
power[powerCount++] = 90;
power[powerCount++] = 21;
double temp;
for (int i=0; i {
for (int j=0; j {
if (power[j] temp = power[j];
power[j] = power[j+1];
power[j+1] = temp;
}
}
}
for (int i=0; i {
cout cout }
cout cin >> insertpower;
//insert_index = powerCount;
for (int i=0; i {
if (insertpower > power[i]){ // 插入数代替数组原来数,并更换下标(直接替换掉数组原来数字)
power[i] = insertpower;
insert_index = i;
break; //一旦找到数,跳出循环
}
}
//cout << powerCount << endl;
for (int i=powerCount-1; i>=insert_index; i--){ //
power[i+1] = power[i];//数字复制到后一个元素
}
//cout << power[2] << endl;
power[insert_index+1] = insertpower;
powerCount++;
cout << "插入后:" << endl;
for (int i=0; i<powerCount; i++) // 循环输出数组
{
cout << power[i] << "\t" << endl;
}
return 0;
}
这样写编译能通过吗
for (int i=0; i {
第一个循环里执行了这句,那执行前的power[i]去哪了,直接舍弃了么
power[i] = insertpower;