---本人博客
求最大值及其下标
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。
输入格式:
输入在第一行中给出一个正整数n第二行输入n个整数,用空格分开。
输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。
输入样例:
6
2 8 10 1 9 10
输出样例:
10 2
1. 代码块
#include<stdio.h>
int main()
{
int a[10],n,i,b,t;
t=0,b=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
b=a[0];
for(i=1;i<n;i++){
if(b<a[i]){
b=a[i];
t=i;
}
}
printf("%d %d",b,t);
return 0;
}
2.流程图
![流程图(https://img2018.cnblogs.com/blog/1580505/201902/1580505-20190227164644291-1154794439.png)
3.问题解决
在编写代码的过程中我参考了同学的比较大小的编码,然后我自己也在其中一个地方疏忽。就是在写b=a[0]时,我把这个编码写入了第二个循环内,导致我在输出下标时答案不正确。后来我叫室友帮我看了一下,他说应该放在循环外面,不然每次循环时它就会重新定义b=a[0];所以最后我改过来之后答案就正确了。
4.运行结果图
![运行结果图
(https://img2018.cnblogs.com/blog/1580505/201902/1580505-20190227165602217-1642878608.png)