m0_70031772 2022-06-07 18:41 采纳率: 0%
浏览 54

程序改错 求数组a中的最大值和最小值,并将它们分别存入此数组的最后两个元素中(我怎么也找不出)

程序每个注释found下面有一个错误,共2处错误,其他内容保持不变,使之功能符合要求

#include<stdio.h>
   /*************found************/
  void fun(int *a,int *size) ;
  /*************found************/
  {  int k,max=min=0;
     for(k=0;k<size;k++)
     {  if(a[k]>a[max])
          max=k;
        if(a[k]<a[min])
          min=k;
     }
     a[size-2]=a[max];
     a[size-1]=a[min];
  }
  int main( void)
  {  int a[5],i;
     for(i=0;i<5;i++)
     scanf("%d",&a[i]);
     fun(a,5);
     printf("max=%d,min=%d",a[3],a[4]);
  return 0;
  }
 

编译错误.
main.c:5:3: error: expected identifier or '(' before '{' token
{ int k,max=min=0;
^
main.c: In function 'main':
main.c:19:6: warning: passing argument 2 of 'fun' makes pointer from integer without a cast [enabled by default]
fun(a,5);
^
main.c:3:8: note: expected 'int *' but argument is of type 'int'
void fun(int *a,int *size) ;
^

 

 

 

  • 写回答

1条回答 默认 最新

  • ...404 Not Found 2022-06-07 18:53
    关注

    #include<stdio.h>
    /*found/
    void fun(int *a,int *size) //;不要加逗号
    /*found/
    { int k,max=min=0;//先max=0,min=0;
    for(k=0;k<*size;k++)//解引用
    { if(a[k]>a[max])
    max=k;
    if(a[k]<a[min])
    min=k;
    }
    a[size-2]=a[max];
    a[size-1]=a[min];
    }
    int main( void)
    { int a[5],i;
    for(i=0;i<5;i++)
    scanf("%d",&a[i]);
    fun(a,5);
    printf("max=%d,min=%d",a[3],a[4]);
    return 0;
    }

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月7日

悬赏问题

  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)