比赛名称: 实验6_数组_一维数组
比赛类型: 内部(受邀或输入密码才能参赛)
比赛状态: 已结束
比赛时间: 开始于 2025-11-14 15:00:00,至 2025-11-17 00:00:00结束。
1.数组的基本概念:掌握一维数组的定义、初始化和内存结构;理解数组下标的作用和数组元素的访问方式;认识数组在内存中的连续存储特性。
2.数组的基本操作:熟练进行数组的输入、输出、遍历操作;掌握数组元素的赋值、修改、查找等基本操作;理解数组长度与有效数据个数的区别。
3. 数组应用能力:能够使用数组解决实际的数据处理问题;掌握常见的数组算法(排序、查找、统计等);培养使用数组进行批量数据处理的能力。
// 数组定义
int scores[10]; // 定义包含10个整数的数组
float temperatures[7]; // 定义包含7个浮点数的数组
// 数组初始化
int numbers[5] = {1, 2, 3, 4, 5}; // 完全初始化
int data[10] = {1, 2, 3}; // 部分初始化,其余为0
int arr[] = {1, 3, 5, 7, 9}; // 自动确定数组大小
// 下标访问(从0开始)
int arr[5] = {10, 20, 30, 40, 50};
arr[0] = 100; // 修改第一个元素
printf("%d", arr[2]); // 输出第三个元素:30
// 数组遍历
for(int i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
// 从键盘输入数组
int n, arr[100];
printf("请输入元素个数: ");
scanf("%d", &n);
for(int i = 0; i < n; i++) {
printf("请输入第%d个元素: ", i+1);
scanf("%d", &arr[i]);
}
// 输出数组
for(int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
(1)数组越界:确保下标在[0, 数组大小-1]范围内
(2)有效数据管理:使用变量记录数组中实际存储的数据个数
(3)内存分配:避免定义过大的数组导致栈溢出
(4)数组名特性:数组名代表数组首元素的地址
1.输入10个整数,求最大值、最小值和平均值
2.将数组元素逆序存放
3.在有序数组中插入一个元素,保持有序性
4.统计数组中各分数段的人数
5.删除数组中指定的元素
6.合并两个有序数组
7.查找数组中的重复元素
8.数组元素循环右移问题