初始提交
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
// 定义结构体
|
||||
struct MyArray
|
||||
{
|
||||
int arr[100]; // 数组,假设最大长度为100
|
||||
int size; // 数组当前元素数量
|
||||
};
|
||||
|
||||
// 插入函数,作为结构体外部的成员函数
|
||||
void insert(MyArray &myArray, int position, int value)
|
||||
{
|
||||
if (position < 0 || position > myArray.size || myArray.size >= 100)
|
||||
{
|
||||
// 处理错误情况,例如位置无效或数组已满
|
||||
cout << "无效位置或者数组已满" << endl;
|
||||
return;
|
||||
}
|
||||
|
||||
// 将从插入位置开始的元素向后移动一位
|
||||
for (int i = myArray.size; i > position; i--)
|
||||
{
|
||||
myArray.arr[i] = myArray.arr[i - 1];
|
||||
}
|
||||
|
||||
// 在指定位置插入新值
|
||||
myArray.arr[position] = value;
|
||||
|
||||
// 更新数组大小
|
||||
myArray.size++;
|
||||
}
|
||||
|
||||
// 打印函数,作为结构体外部的成员函数
|
||||
void print(const MyArray &myArray)
|
||||
{
|
||||
for (int i = 0; i < myArray.size; i++)
|
||||
{
|
||||
cout << myArray.arr[i] << " ";
|
||||
}
|
||||
cout << endl;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
MyArray myArray; // 创建MyArray实例
|
||||
|
||||
// 初始化数组和size
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
myArray.arr[i] = i + 1;
|
||||
}
|
||||
myArray.size = 5; // 设置数组当前大小
|
||||
|
||||
// 在指定位置插入新值
|
||||
int insertPos = 2;
|
||||
int newValue = 10;
|
||||
insert(myArray, insertPos, newValue);
|
||||
|
||||
// 打印数组
|
||||
print(myArray);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user