阿毛要变强 2021-01-10 14:57 采纳率: 33.3%
浏览 42

把数组作为函数参数在Dev-c++上运行出现的疑惑

#include<stdio.h>
void maxin(int a[]);
int main(){
    int a[10]={1,2,3,4,5,6,7,8,9,45};
    maxin(a);
}
void maxin(int a[])
{
    int i,*p,*q;      //p--max;q--min
    p=a;
    q=a;
    for(i=0;i<10;i++)
    {
        if(*p<a[i])
        *p=a[i];     //ruo  *p=a[i] ->wrong
        if(*q>a[i])
        q=&a[i];
    }
    printf("max=%d,min=%d",*p,*q);
}

有哪位大佬知道为什么最后*q也为45呢,而且调试时*q随*p的变化而变化

  • 写回答

3条回答 默认 最新

  • Triumph-light 2021-01-10 16:17
    关注

    你的if语句下面一直在给*p*q赋值,而且如果这样一个一个去比较你还需要一个参数去记录他的最值

    评论

报告相同问题?

悬赏问题

  • ¥15 如何构建全国统一的物流管理平台?
  • ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
  • ¥20 和学习数据的传参方式,选择正确的传参方式有关
  • ¥15 这是网络安全里面的poem code
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路