You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何补全C语言中调用指定addPoint函数实现两点相加的作业代码

代码修改说明
  • 首先修正scanf参数错误:C语言scanf函数需要传入待写入变量的内存地址才能正常存储输入值,原有代码未加取地址符&,会导致运行异常。
  • 补全计算输出逻辑:新增变量存储addPoint函数的返回值,再调用printPoint输出结果即可,完全符合题目要求不修改给定addPoint函数的规则。
补全后的完整可运行代码
#include <stdio.h>
#include <stdlib.h>

typedef struct
{
    int x,y;
}point;

void printPoint( point p )
{

    printf("(%d,%d)",p.x,p.y);
}

point addPoint( point p1, point p2 )
{
    point pResult;
    pResult.x = p1.x + p2.x ;
    pResult.y = p1.y + p2.y ;
    return pResult;
}

int main()
{
    point p1,p2, res;
    printf("Enter first point: ");
    scanf("%d,%d", &p1.x, &p1.y);
    printf("Enter second point: ");
    scanf("%d,%d", &p2.x, &p2.y);
    res = addPoint(p1, p2);
    printf("相加结果:");
    printPoint(res);
    return 0;
}
注意事项

输入坐标时需要按照x,y的格式输入,两个数字之间用英文逗号分隔,不要加空格,否则scanf会读取失败。

内容的提问来源于stack exchange,提问作者WWoPPoWW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:06:05