使用的 IDE 是 CLion ,编译器是其自带的 MinGW 11.0 w64
下面的代码使用 chatgpt 加了注释,主要的问题是:
在直接给定输入
8 1 9 2 6 0 8 1 7 时,结果为 0.
而再次给定输入
8 1 9 2 6 90 8 1 7 时,结果还是 0.
而手动一个一个输入则正常显示 1.
虽然描述的很离奇,但是确实是这样,即:第一次的结果会影响第二次的结果,使之变成第一次的结果
我问了我们教 C 语言的老师,连他也不知道怎么回事,说可能是 CLion 的问题,但是这个答案并不能令我信服,
故来寻求各位 V 友帮助
求各位 V 友解答 QAQ
代码如下:
#include <stdio.h> int main() { int n; scanf("%d", &n); // 从标准输入中读取一个整数,存储到变量 n 中 int min; scanf("%d", &min); // 假设输入的第一个数为最小值,存储到变量 min 中 int num; for (int i = 1; i < n; i++) { // 循环读取剩余的 n-1 个整数 scanf("%d", &num); // 从标准输入中读取一个整数,存储到变量 num 中 printf("%d\n", num); // 将读取的整数打印到标准输出,以换行符结束 if (num < min) { // 检查当前读取的整数是否比最小值小 min = num; // 更新最小值为当前读取的整数 } } printf("%d", min); // 打印最小值到标准输出 return 0; // 返回 0 表示程序正常结束 } 
1


