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

C++圆形计算程序输出异常:仅获随机数值问题求助

问题分析与修复

你的代码核心问题是错误使用逗号表达式代替流插入操作符,导致输出逻辑完全不符合预期:

  • 你写的cout << ("\n\t Diameter Of a Circle ", diameter);里,括号内是逗号表达式,C++中逗号表达式会执行所有操作,但最终返回最后一个操作数的值——也就是说前面的字符串会被直接丢弃,只输出diameter的数值。三个cout连续输出数值,就会把它们连在一起显示,看起来像是随机乱码。
  • 正确的输出方式应该用<<操作符依次连接要输出的字符串和变量,把内容逐个插入到输出流中。

修复后的代码

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
    float radius, area, circumference, diameter;
    const double pi = 3.14159265358979323846;

    cout << "\n Please Enter the radius of a circle : ";
    cin >> radius;

    diameter = 2 * radius;
    circumference = 2 * pi * radius;
    area = pi * radius * radius; 

    cout << "\n\t  Diameter Of a Circle : " << diameter;
    cout << "\n\t Circumference Of a Circle : " << circumference;
    cout << "\n\t Area Of a Circle : " << area;

    return 0;
}

额外优化建议(可选)

如果想让输出的数值格式更美观(比如保留固定小数位),可以利用<iomanip>里的setprecision和fixed:

cout << fixed << setprecision(2); // 放在输出前,设置保留2位小数
cout << "\n\t  Diameter Of a Circle : " << diameter;
cout << "\n\t Circumference Of a Circle : " << circumference;
cout << "\n\t Area Of a Circle : " << area;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 21:40:15