新手请教一个练习题目!

时间:2023-02-12 21:10:35
这是一个练习题:
编写一个程序,提示用户从键盘输入一个星期的薪水(以美元为单位)和工作时数,它们均为浮点数,然后计算并输出每个小时的平均薪水,输出格式如下所示:
your average hourly pay rate is 7 dollars and 54 cents.(翻译:你的平均小时工资率是7美元,54美分。)
下面是我编写的:
#include <stdio.h>
int main()
{
    double a=0;   //一个星期的薪水
    double b=0;   //每天工作时间
    double c=0;   //计算出来的平均小时工资率
    printf("请输入一个星期的薪水和每天工作时间:");
    scanf("%lf %lf",&a,&b);
    c=a/7/b;
    printf("your average hourly pay rate is %.2f. \n",c);
    return 0;
}
现在就是一个问题,怎么写成输出如上面所说的格式,请老师指点。
比如我现在输入654 8,回车后输出11.68.
按我上面编写的输出为:your average hourly pay rate is 11.68.
怎么能让它格式为your average hourly pay rate is 11 dollars and 68 cents.

3 个解决方案

#1


#include <stdio.h>
int main()
{
    double    a = 0;   //一个星期的薪水
    double    b = 0;   //每天工作时间
    double    c = 0;   //计算出来的平均小时工资率
    printf("请输入一个星期的薪水和每天工作时间:");
    scanf("%lf%lf", &a, &b);
    c = a / 7 / b;
    printf("your average hourly pay rate is %d dollars and %d cents.\n", (int)c, (int)((c - (int)c) * 100));
    return 0;
}

#2


11可以通过转换为整型,或者使用floor函数得到,68可以通过原数减去上一步得到的结果之后再乘100得到(乘100是单位换算成分)

#3


恩,看明白了,非常感谢你们! 新手请教一个练习题目!

#1


#include <stdio.h>
int main()
{
    double    a = 0;   //一个星期的薪水
    double    b = 0;   //每天工作时间
    double    c = 0;   //计算出来的平均小时工资率
    printf("请输入一个星期的薪水和每天工作时间:");
    scanf("%lf%lf", &a, &b);
    c = a / 7 / b;
    printf("your average hourly pay rate is %d dollars and %d cents.\n", (int)c, (int)((c - (int)c) * 100));
    return 0;
}

#2


11可以通过转换为整型,或者使用floor函数得到,68可以通过原数减去上一步得到的结果之后再乘100得到(乘100是单位换算成分)

#3


恩,看明白了,非常感谢你们! 新手请教一个练习题目!