九维思维体系:从功能验证到质量守护的测试进阶之路
2026/10/11 8:05:33
数组是⼀组相同类型元素的集合;
数组分为⼀维数组和多维数组,多维数组⼀般⽐较多⻅的是⼆维数组。
例:
int arr[10]int 位置存放的是数组中存放数据的类型;
arr位置存放的是数组名的名字,这个名字根据实际情况,起的有意义就⾏;
int arr[5] = {1,2,3,4,5};不完全初始化:
int arr2[6] = {1};#include <stdio.h> int main() { int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; int i = 0; for (i = 0; i < 10; i++) { scanf("%d", &arr[i]); } for (i = 0; i < 10; i++) { printf("%d ", arr[i]); } return 0; }#include <stido.h> int main() { int arr[10] = {0}; int sz = sizeof(arr)/sizeof(arr[0]); printf("%d\n", sz); return 0; }其中sz就是数组元素的个数。
例如:int ar[3][5]
int arr3[3][5] = {1,2,3,4,5, 2,3,4,5,6, 3,4,9,6,7};不完全初始化:
int arr1[3][5] = {1,2};一维数组和二维数组不完全初始化未显示的均为0;
#include <stdio.h> int main() { int arr[3][5] = { 0 }; int i = 0;//遍历⾏ //输⼊ for (i = 0; i < 3; i++) //产⽣⾏号 { int j = 0; for (j = 0; j < 5; j++) //产⽣列号 { scanf("%d", &arr[i][j]); //输⼊数据 } } //输出 for (i = 0; i < 3; i++) //产⽣⾏号 { int j = 0; for (j = 0; j < 5; j++) //产⽣列号 { printf("%d ", arr[i][j]); //输出数据 } printf("\n"); } return 0; }图片说明:第一行为输入,二三四行为输出。
二分查找(折半查找):
#include <stdio.h> int main() { int arr[] = {1,2,3,4,5,6,7,8,9,10}; int left = 0; int right = sizeof(arr)/sizeof(arr[0])-1; int key = 7;//要找的数字 int mid = 0;//中间元素的下标 int find = 0; while(left<=right) { mid = (left+right)/2; if(arr[mid]>key) { right = mid-1; } else if(arr[mid] < key) { left = mid+1; } else { find = 1; break; } } if(1 == find ) printf("找到了,下标是%d\n", mid); else printf("没找到\n"); }