目录
代码逻辑
- 创建能存放10个整数的数组
- scanf函数接收10个整数
- 比较10个整数,求出最大值
错误的比较方法
创建一个整型变量max,初始值赋值为0,把max和其他10个整数相比较,只要大于max,就把max赋为那个值,最后max就是最大值
以上逻辑错误的原因在于:如果10个整数都是负数,那么0和负数相比较,最大值还是0,也就是max,所以以上方法不可取
正确的比较方法
还是创建整型变量max,初始值赋值为10个整数中的第一个数,再将max和其他9个整数相比较,这样就能正确的求出10个整数中的最大值
代码实现
#include<stdio.h>
int main()
{
//创建整型数组
int arr[10] = { 0 };
//求出数组元素个数
int sz = sizeof(arr) / sizeof(arr[0]);
//输入
for (int i = 0; i < sz; i++)
{
scanf("%d", &arr[i]);
}
//比较
int max = arr[0];
for (int i = 1; i < sz; i++)
{
if (arr[i] > max)
{
max = arr[i];
}
}
//输出
printf("max = %d\n", max);
return 0;
}