xuanlzjust 2022-10-20 08:36 采纳率: 54.5%
浏览 18
已结题

交换问题,希望得到解答

问题遇到的现象和发生背景 将其中最大的数与第一个数对换,最小的数与最后一个数 对换。 尽力了但找不到错误,求解答
用代码块功能插入代码,请勿粘贴截图 #include <stdio.h>

#include <stdlib.h>
int main()
{
int i;

int a[6],*p;
for (i=0;i<6;i++)
{
    scanf("%d",&a[i]);
}
int  b=a[0];
int c=a[5];
for(p=a;p<6+a;p++)
{
    if(a[0]<*p)
        a[0]=*p;
}
for(p=a;p<6+a;p++)
{
    if(a[0]==*p)
        *p=b;
        break;
}

for(p=a;p<6+a;p++)
{
    if(a[5]>*p)
        a[5]=*p;
}
for(p=a;p<6+a;p++)
{
    if(a[5]==*p)
        *p=c;
        break;
}
for(p=a;p<6+a;p++)
{
    printf("%d ",*p);
}
system("pause");

}

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-10-20 09:09
    关注

    修改如下,供参考:

    #include <stdio.h>
    #include <stdlib.h>
    int main()
    {
        int i;
        int a[6], * p;
        for (i = 0; i < 6; i++)
        {
            scanf("%d", &a[i]);
        }
        int  b = a[0];
        int  c = a[0];  // c = a[5];
        for (p = a; p < 6 + a; p++)
        {
            if (b < *p)  //if (a[0] < *p)找最大值
                b = *p; //a[0] = *p;
            if (c > *p) //找到最小值
                c = *p;
        }
        for (p = a; p < 6 + a; p++)
        {
            if (b == *p) { //if(a[0] == *p)
                if (p != a) 
                {
                    i = a[0];
                    a[0] = *p;
                    *p = i;
                }
                break;
            }
        }
        //for (p = a; p < 6 + a; p++)
        //{
        //    if (a[5] > *p)
        //        a[5] = *p;
        //}
        for (p = a; p < 6 + a; p++)
        {
            if (c == *p) {  //if (a[5] == *p)
                if (p != a + 6) {
                    i = a[5];
                    a[5] = *p;//*p = c;
                    *p = i;
                }
                break;
            }
        }
        for (p = a; p < 6 + a; p++)
        {
            printf("%d ", *p);
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 创建了问题 10月20日

悬赏问题

  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题
  • ¥15 ad5933的I2C
  • ¥15 请问RTX4060的笔记本电脑可以训练yolov5模型吗?
  • ¥15 数学建模求思路及代码
  • ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题