将给定的时间转换为 C++ 中的文字


在本教程中,我们将讨论一个将给定时间转换为文字的程序。为此,我们将获得一个特定时间,采用数字格式。我们的任务是将那个特定时间转换为文字

示例

#include <bits/stdc++.h>
using namespace std;
//printing time in words
void convert_time(int h, int m){
   char nums[][64] = {
      "zero", "one", "two", "three", "four",
      "five", "six", "seven", "eight",
      "nine","ten", "eleven", "twelve",
      "thirteen","fourteen", "fifteen",
      "sixteen", "seventeen","eighteen",
      "nineteen", "twenty", "twenty
      one","twenty two", "twenty three",
      "twenty four","twenty five", "twenty six",
      "twenty seven","twenty eight", "twenty nine",
   };
   if (m == 0)
      printf("%s o' clock\n", nums[h]);
   else if (m == 1)
      printf("one minute past %s\n", nums[h]);
   else if (m == 59)
      printf("one minute to %s\n", nums[(h % 12) + 1]);
   else if (m == 15)
      printf("quarter past %s\n", nums[h]);
   else if (m == 30)
      printf("half past %s\n", nums[h]);
   else if (m == 45)
      printf("quarter to %s\n", nums[(h % 12) + 1]);
   else if (m <= 30)
      printf("%s minutes past %s\n", nums[m], nums[h]);
   else if (m > 30)
      printf("%s minutes to %s\n", nums[60 - m],nums[(h % 12) + 1]);
}
int main(){
   int h = 8;
   int m = 29;
   convert_time(h, m);
   return 0;
}

输出

twenty nine minutes past eight

更新于: 2020 年 1 月 22 日

249 次浏览

开启你的 职业

完成该课程后即可获得认证

开始
广告