m0_73517546 2022-10-03 10:16 采纳率: 72.7%
浏览 15
已结题

关于#while#的问题,如何解决?

#include <stdio.h>
int main()
{
int x;
scanf("%d",&x);
if(x<0){
printf("fu");
x = -x;
}
int mask = 1;
int t = x;
while(t>9){
t /= 10;
mask *= 10;
}
do{
int d = x / mask;
switch(d){
case 0: printf("ling");
break;
case 1: printf("yi");
break;
case 2: printf("er");
break;
case 3: printf("san");
break;
case 4: printf("si");
break;
case 5: printf("wu");
break;
case 6: printf("liu");
break;
case 7: printf("qi");
break;
case 8: printf("ba");
break;
case 9: printf("jiu");
break;

    }
    if(mask > 9){
        printf(" ");
        x %= mask;
        mask=mask/10;
    }
}
    while (mask >0 );
printf("\n");
return 0;

}
输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu
输入格式:
输入在一行中给出一个整数,如:1234。

提示:整数包括负数、零和正数。

输出格式:
在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如
yi er san si。

输入样例:
-600
输出样例:
fu liu ling ling
为啥系统显示运行超时?

  • 写回答

2条回答 默认 最新

  • X-道至简 2022-10-03 10:42
    关注

    if(mask > 9){ 这句话改成 if(mask > 0){ 9改成0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月12日
  • 已采纳回答 10月4日
  • 创建了问题 10月3日

悬赏问题

  • ¥200 求博主教我搞定neo4j简易问答系统,有偿
  • ¥15 nginx的使用与作用
  • ¥100 关于#VijeoCitect#的问题,如何解决?(标签-ar|关键词-数据类型)
  • ¥15 一个矿井排水监控系统的plc梯形图,求各程序段都是什么意思
  • ¥15 ensp路由器启动不了一直报#
  • ¥50 安卓10如何在没有root权限的情况下设置开机自动启动指定app?
  • ¥15 ats2837 spi2从机的代码
  • ¥200 wsl2 vllm qwen1.5部署问题
  • ¥100 有偿求数字经济对经贸的影响机制的一个数学模型,弄不出来已经快要碎掉了
  • ¥15 数学建模数学建模需要