#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() {
int in[3][5] = {0};
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 5; j++) {
scanf("%d", &in[i][j]);
}
}
int min;
for (int i = 1; i < 3; i++) {
min = in[0][3];
if (min > in[i][3]) {
min = in[i][3];
}
}
printf("%d", min);
return 0;
}
看作挺对,但会出现编译警告
_.c: In function 'main':
_.c:5:2: warning: missing braces around initializer [-Wmissing-braces]
int in[3][5] = { 0 };
^
_.c:5:2: warning: (near initialization for 'in[0]') [-Wmissing-braces]
应该是int in[3][5]={ {0} }
这是最简单的初始化,因为我们知道编译器在这里很人性化
//当然,你可以图省事不初始化,哈哈
#include <stdio.h>
// 冒泡排序函数,从大到小排序
void bubbleSort(int arr[]) {
int i, j, temp;
// 冒泡排序算法
for (i = 0; arr[i] != -1; i++) { // 以 -1 作为结束标志
for (j = 0; arr[j] != -1 && arr[j + 1] != -1; j++) {
if (arr[j] < arr[j + 1]) { // 从大到小排序
// 交换 arr[j] 和 arr[j + 1]
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
// 示例数组,最后一个元素为 -1 作为结束标志
int arr[] = {5, 3, 8, 6, 2, -1}; // -1 作为结束标志
// 调用冒泡排序函数
bubbleSort(arr);
// 输出排序后的数组
printf("排序后的数组: ");
for (int i = 0; arr[i] != -1; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
// 调用冒泡排序函数
bubbleSort(arr);
这一步,会改变main函数里面的arr的数据
数组名在表达式中会被转换为指向数组首元素的指针,所以它可以看作一个bug,它转换成了指针!
Comments NOTHING