• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

华为面试题数字大小写转换

c语言 搞代码 4年前 (2022-01-06) 36次浏览 已收录 0个评论

一个四位数,如1024,1004,打印出他们的中文形式,如果一千零二十四,一千零四,大家参考使用吧

这题因为限定了4位数,所以只考虑了4位数的情况,吃点分享一个大小写转换的源码,里面有不限位数的情况,当时调试的很痛苦,思想差不多。

代码如下:
void iConvert(int digit)
{
    char a[5][10] = {“千”,”百”,”十”,””,”零”};
    char b[11][10] = {“零”,”一”,”二”,”三”,”四”,”五”,”六”,”七”,”八”,”九”,”十”};
    char result[50] = {‘\0’};
    int A[4] = {};
    for(int

来源gaodai.ma#com搞##代!^码网

i=3;i>=0;i–)
    {
        A[i] = digit % 10;
        digit = int(digit/10);
    }
    printf(“%d,%d,%d,%d\n”,A[0],A[1],A[2],A[3]);
    int foundZero = 0;
    for(int i = 0 ;i<4;i++)
    {
        if(A[i]>0)
        {
            strcat(result,b[A[i]]);
            strcat(result,a[i]);
        }
        if(A[i]==0 && foundZero == 0)
        {
           if(i!=3)//如果不是最后一位,则不追加零
           {
             strcat(result,a[4]);
             foundZero = 1;
           }
        }   
    }
    puts(result);
}

运行结果:

以上就是华为面试题数字大小写转换的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:华为面试题数字大小写转换
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址