快乐打码 2022-11-07 23:35 采纳率: 71.4%
浏览 34
已结题

请问我写的代码有什么错,哪错了,要怎么改正

本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。

输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。

输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。

输入样例:
6
2 8 10 1 9 10
输出样例:
10 2

#include<stdio.h>
int main(){
    int n,i,t,max=0;
    scanf("%d",&n);
    int arr[n];
    for(i=2;i<n;i++){
        scanf("%d",&arr[i]);
    }
    for(i=2;i<n;i++){
   if(max<arr[i])
       t=max;
       max=arr[i];
        arr[i]=t;
    }
    printf("%d %d",max,i);
    return 0;
}

  • 写回答

2条回答 默认 最新

  • qzjhjxj 2022-11-08 11:44
    关注

    修改如下,供参考:

    #include<stdio.h>
    #define N 11      //修改
    int main() {
        int n, i, t, max = 0;
        scanf("%d", &n);
        int arr[N];  //int arr[n]; 修改
        for (i = 0; i < n; i++) { //for (i = 2; i < n; i++)  修改
            scanf("%d", &arr[i]);
        }
        max = arr[0]; t = 0;  // 修改
        for (i = 0; i < n; i++) { // 修改缺 ‘{’ for (i = 2; i < n; i++) 
            if (max < arr[i]) { //修改
                t = i;//t = max; 修改
                max = arr[i];
                //arr[i] = t;   修改
            }//修改
        }
        printf("%d %d", max, t);// 修改 ("%d %d",max,i)
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月16日
  • 已采纳回答 11月8日
  • 创建了问题 11月7日

悬赏问题

  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度