m0_73565969 2023-02-24 18:53 采纳率: 53.8%
浏览 31
已结题

C++这该怎么解决啊,为什么会出现错误


#include<iostream>
using namespace std;
int main()
{
    int (*a)[3] = new int[3][3];
    int i, j,sum=0,max,min;
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            cin >> *(a+i)[j];
            sum += *(a + i)[j];
        }
    }
    max = *a[0];
    min = *a[0];
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            if (*(a + i)[j] > max)
            {
                max = *(a + i)[j];
            }
        }
    }
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            if (*(a + i)[j] < min)
            {
                min = *(a + i)[j];
            }
        }
    }
    cout << "和为" << sum << endl;
    cout << "最大值为" << max << endl;
    cout << "最小值为" << min << endl;
    delete[]a;
}

img

  • 写回答

3条回答 默认 最新

  • QWQ.qwq 2023-02-24 19:45
    关注

    没有你想象的那么麻烦,可以换换思路:

     #include<iostream>
    using namespace std;
    int main()
    {
        int a[9];
        int max=-1e9,min=1e9,sum=0;
        for(int i=0;i<9;i++){
            cin >> a[i];
            sum+=a[i];
            if(max<a[i])    max=a[i];
            if(min>a[i])    min=a[i];
        }
        cout << "和为" << sum << endl;
        cout << "最大值为" << max << endl;
        cout << "最小值为" << min;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月24日
  • 已采纳回答 3月16日
  • 创建了问题 2月24日