本题可以参考实验教程P56的典型例题1,但注意输入输出要求不同
提示:需要预先给定一个足够大的数组空间,由于题目规定n<=50,我们可以如下做
#define SIZE 50
int main()
{ int s[SIZE];
……
}
程序流程:
输入数组的实际长度
for()
{ 输入每个数组元素的值 }
初始化最大为第0个数组元素
初始化最大值对应下标为0
for() { 如果找到一个数比当前最大值大 修改最大值 修改最大值对应下标 }
输出结果
#include<stdio.h> #define SIZE 50 int main() { int a[SIZE]; int i,max,n,pos; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } max=a[0]; pos=0; for(i=1;i<n;i++) { if(a[i]>max) { max=a[i]; pos=i; } } printf("max number is %d\n",max); printf("max number pos is %d",pos); }
浙公网安备 33010602011771号