Aitee 2023-07-18 21:20 采纳率: 92.9%
浏览 88
已结题

在printf处出现报错,是哪里出的问题呢?


#define _CRT_SECURE_NO_WARINGS
#include <iostream>
#include <algorithm>
using namespace std;
const int MAX_N = 100;
int n, a[MAX_N];
void solve()
{
    int ans = 0;

    for (int i = 0; i < n; i++) {
        for (int j = i + 1; j < n; j++) {
            for (int k = j + 1; k < n; k++) {
                int len = a[i] + a[j] + a[k];
                int ma = max(a[i], max(a[j], a[k]));
                int rest = len - ma;//其余两棍之和

                if (ma < rest) {
                    ans = max(ans, len);
                }
            }
        }
    }
    printf("%d", &ans);
}
    int main()
    {
        scanf_s("%d", &n);
        for (int i = 0; i < n; i++)
        {
            scanf_s("%d", &a[i]);
        }
     solve();
}

调用printf实际类型:"int*"时需要整数时,非整数传递为_param_(2).
出现了这类报错时,因该如何修改代码呢?

  • 写回答

3条回答 默认 最新

  • threenewbee 2023-07-18 21:22
    关注

    printf("%d", &ans);
    ->
    printf("%d", ans)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月27日
  • 已采纳回答 7月19日
  • 创建了问题 7月18日