标题:刚学c语言不懂怎么有问题求解
只看楼主
枉山
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2022-10-9
结帖率:100%
已结贴  问题点数:20 回复次数:2 
刚学c语言不懂怎么有问题求解

#include<stdio.h>

int main()

{

    double pi=3.1415926;

    double r,h,S,V;

    scanf("%lf%1f",&r,&h);      /*键盘输入圆半径r和高度h*/

    S=pi*pow(r,2);                        /*计算圆面积S的值*/

    V=S*h;                    /*计算圆柱体体积V的值*/

    printf("S=%f\n",S);

    printf("V=%f\n",V);

    return 0;

}
为什么v的值总是为0
搜索更多相关主题的帖子: double printf c语言 面积 计算 
2022-10-09 17:38
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:20 
你用的编译器在编译你这段代码时会给出警告信息吗?
比如
scanf("%lf%1f",&r,&h); 你把字母l写成了数字1 ------ 格式字符串“%1f”需要类型“float *”的参数,但可变参数 2 拥有了类型“double *”
poS=pi*pow(r,2); 使用pow却不#include <math.h> ------ “pow”未定义;假设外部返回 int

程序代码:
#define _USE_MATH_DEFINES
#include <stdio.h>
#include <math.h>

int main( void )
{
    double r, h;
    scanf( "%lf%lf", &r, &h );      /* 键盘输入圆半径r和高度h */

    double s = M_PI*r*r;            /* 计算圆面积S的值 */
    double v = s*h;                 /* 计算圆柱体体积V的值 */
    printf( "S = %f\n", s );
    printf( "V = %f\n", v );
}
2022-10-09 20:00
枉山
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2022-10-9
得分:0 
回复 2楼 rjsp
谢谢!
2022-10-09 20:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-510246-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017922 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved