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

使用C语言计算圆的面积时遇到undefined reference to main错误求助

解决C语言"undefined reference to main"错误:计算圆面积的代码修正

你遇到的错误原因很直接:C语言程序必须以main()函数作为执行入口,你的代码里只写了计算面积的area()函数,完全没有定义main(),链接器找不到程序的起始点,所以抛出这个错误。

下面是修正后的代码,同时优化了代码结构,让职责更清晰:

#include <stdio.h>

// 专门负责计算圆面积的函数,只做计算逻辑
float calculateArea(float r) {
    return 3.14f * r * r;
}

int main() {
    float radius, area;
    
    printf("输入圆的半径:");
    scanf("%f", &radius);
    
    area = calculateArea(radius);
    printf("圆的面积是:%.2f\n", area);
    
    return 0;
}

关键修改点:

  • 新增main()函数,这是C程序运行的起点,必不可少
  • 拆分了功能:把输入输出逻辑放在main(),calculateArea()只负责计算,代码更易读和维护
  • 原代码里函数内部有和函数同名的变量area,虽然语法合法,但容易混淆,这里改成更清晰的命名
  • 用3.14f表示单精度浮点数,避免和双精度的隐式转换问题
  • 输出时用%.2f控制只显示两位小数,结果更美观

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 07:17:12