【问题标题】:Time calculator in CC语言的时间计算器
【发布时间】:2017-11-02 12:24:49
【问题描述】:

我必须用 C 语言编写一个时间计算器。

我只是写普通的计算器:

# include <stdio.h>

int main() {

char operator;
float firstNumber,secondNumber;

printf("Enter an operator (+, -, *,): ");
scanf("%c", &operator);

printf("Enter two operands: ");
scanf("%f %f",&firstNumber, &secondNumber);

switch(operator)
{
    case '+':
        printf("%0.2f + %0.2f = %0.2f\n",firstNumber, secondNumber, firstNumber + secondNumber);
        break;

    case '-':
        printf("%0.2f - %0.2f = %0.2f\n",firstNumber, secondNumber, firstNumber - secondNumber);
        break;

    case '*':
        printf("%0.2f * %0.2f = %0.2f\n",firstNumber, secondNumber, firstNumber * secondNumber);
        break;

    case '/':
        printf("%0.2f / %0.2f = %0.2f\n",firstNumber, secondNumber, firstNumber / secondNumber);
        break;

    // operator doesn't match any case constant (+, -, *, /)
    default:
        printf("Error! operator is not correct");
}

return 0;
}

我需要准备一个时间计算器,例如:

17,58 + 0,12 = 18,10

17,58 / 2 = 8,59

0,15 * 4 = 1.00

你能帮帮我吗? 提前谢谢你

【问题讨论】:

  • SO 不是代码编写服务。请咨询stackoverflow.com/help/asking 了解您是如何询问的。
  • 可以说,当您计划使用准确的小时/分钟/秒值进行计算时,浮点数并不是最佳选择。
  • 我将以分钟为单位转换输入时间,处理操作(作为标准操作),并将结果从分钟转换为时间。
  • 17,58 表示 17 小时 58 分钟?
  • 是的,17,58 表示 17:58。 17 小时 58 分钟

标签: c time calculator hour


【解决方案1】:

如果你想做那个函数,你应该写2个函数

  1. 从浮点数(例如 17.58)转换为总分钟数 (17 * 60 + 58 = 1078)
  2. 从总分钟数转换为浮点数

例子:

#include <math.h>
int float2minute(float time)
{
    int hour = (int) floor(time);
    int minute = (time - hour) * 100;
    return hour * 60 + minute;
}

float minute2float(int time)
{
    float hour = floor((float)time / 60);
    float minute = time - hour * 60;
    return hour + minute / 100;
}

现在,您可以将上述 2 个函数用作:

printf("%0.2f + %0.2f = %0.2f\n",firstNumber, secondNumber, minute2float(float2minute(firstNumber) + float2minute(secondNumber)));

【讨论】:

    猜你喜欢
    • 2012-05-14
    • 2013-12-03
    • 1970-01-01
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 2014-05-22
    相关资源
    最近更新 更多