【求助中】数组排序问题
本帖最后由 扶风之木 于 2022-4-29 19:31 编辑#include<stdio.h>
#define N 10
void main()
{
int array, max, i;
printf("please input 10 int\n");
for (i = 0; i < N; i++)
scanf_s("%d", array+1);
max = array;
for (i= 1; i < N; i++)
if (max < array)max = array;
printf("%d", max);
}
这是一个求10个整数中最大值的程序,但是我这样写求出来的是最后一个数,求解答。 scanf_s("%d", array+1);
是array+i。只是在array反复赋值,虽然没有初始化array,可能是编译环境自动给你初始化为0了,这才没有报错。 用 array 不香?
那个循环里它一直是 array + 1 , 所以成功输入的数只有最后一个
不然改成 array + i 也可以 #include <stdio.h>
#define N 10
void main()
{
int array, max, i;
printf("please input 10 int\n");
for (i = 0; i < N; i++)
scanf ("%d", array + i);//此处有修改
max = array;
for (i = 1; i < N; i++)
if (max < array)
max = array;
printf("%d\n", max);
}
页:
[1]