想了半天不会,求大神带我

编程从键盘输入10个数并保存到数组,输出10个数中的最大值及其下标、最小值及其下标。

#include <stdio.h>

void main()

{

 int a[10],i,max,min,m,n;

 printf("");

 scanf("%d",&a[10]);

 max=min=a[0];

 m=n=0;

 for(i=0;i<10;i++)

 {

  if(max<a[i])

  max=a[i];

  m=i;

  if(min>a[i])

  min=a[i];

  n=i;

 }

 printf("max=%d ,m=%d ,min=%d ,n=%d\n ",max,m,min,n);

}

for(i=0; i<10; i++)
   scanf("%d",&a[i]);

scanf("%d",&a[10]); 你这样写不对,首先数组越界

其他写的都挺好,这个赋值这里 用个循环,详见代码

 

#include "stdio.h"
void main()
{
    int a[10],i,max,min,m,n;
    printf("请输入10个数,用空格分隔:");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    
    max=min=a[0];
    m=n=0;

    for(i=0;i<10;i++)
    {
        if(max<a[i]){
            max=a[i];
            m=i;
        }
        if(min>a[i]){
            min=a[i];
            n=i;
        }
    }
    printf("max=%d ,m=%d ,min=%d ,n=%d\n ",max,m,min,n);
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632