终于使用c++、结构体,函数实现简单数组元素的插入

include

using namespace std;

// 定义结构体
struct MyArray {
int arr[100]; // 数组,假设最大长度为100
int n; // 数组当前元素数量
};
//输入函数
void scanf(MyArray& myArray, int& x, int& y)
{
cin >> myArray.n;
for (int i = 0; i < myArray.n; i++)
{
cin >> myArray.arr[i];
}
cin >> x;
cin >> y;
}
// 插入函数,作为结构体外部的成员函数
void insert(MyArray& myArray, int x, int y) {
if (x < 0 || x > myArray.n || myArray.n >= 100) {
// 处理错误情况,例如位置无效或数组已满
cout << "无效位置或者数组已满" << endl;
}
// 将从插入位置开始的元素向后移动一位
for (int i = myArray.n; i >= x; i--) {
myArray.arr[i] = myArray.arr[i - 1];
}
// 在指定位置插入新值
myArray.arr[x - 1] = y;
// 更新数组大小
myArray.n++;
}

// 打印函数,作为结构体外部的成员函数
void print(const MyArray& myArray) {
for (int i = 0; i < myArray.n; i++) {
cout << myArray.arr[i] << " ";
}
cout << endl;
}
int main() {
MyArray myArray; // 创建MyArray实例
int y = 0;
int x = 0;
scanf(myArray, x, y);
// 在指定位置插入新值
insert(myArray, x, y);
// 打印数组
print(myArray);
return 0;
}

posted on 2024-09-05 19:37  云朵偷喝你酒  阅读(59)  评论(0编辑  收藏  举报