解题思路:先用字符数组储存好时h和分m的对应输出。h>=0&&h<=23;m>=0&&m<=59;

再根据要求先考虑时,用选择语句解决;再考虑分,这里注意,例如0:30是zero thirty而不是zero thirty zero

注意事项:如上

参考代码:

#include<stdio.h>

#include<string.h>

int main()

{

int h,m;

int ge,shi;

char a[21][20]={"zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen","twenty"};

char b[6][20]={"","","twenty","thirty","forty","fifty"};

char c[20]="o'clock";

scanf("%d%d",&h,&m);

if(h<=20)

printf("%s ",a[h]);

else

{

ge=h/1%10;

shi=h/10%10;

printf("%s ",b[shi]);

printf("%s ",a[ge]);

}

if(m==0)

printf("%s",c);

else

{

if(m<=20)

printf("%s",a[m]);

else

{

shi=m/10%10;

printf("%s",b[shi]);

ge=m/1%10;

if(ge!=0)

{

    printf(" ");

printf("%s",a[ge]);

}

}

}

return 0;

 }


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区