手机
当前位置:查字典教程网 >编程开发 >C语言 >华为面试题数字大小写转换
华为面试题数字大小写转换
摘要:这题因为限定了4位数,所以只考虑了4位数的情况,吃点分享一个大小写转换的源码,里面有不限位数的情况,当时调试的很痛苦,思想差不多。复制代码代...

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

复制代码 代码如下:

void iConvert(int digit)

{

char a[5][10] = {"千","百","十","","零"};

char b[11][10] = {"零","一","二","三","四","五","六","七","八","九","十"};

char result[50] = {''};

int A[4] = {};

for(int i=3;i>=0;i--)

{

A[i] = digit % 10;

digit = int(digit/10);

}

printf("%d,%d,%d,%dn",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);

}

运行结果:

【华为面试题数字大小写转换】相关文章:

用c++实现将文本每个单词首字母转换为大写

DHCP:解析开发板上动态获取ip的2种实现方法详解

内联函数inline与宏定义深入解析

c++通过引用实现三个数字求最大值

打印菱形以及斐波纳契数列的几种解法介绍

如何将C语言代码转换为应用程序(也就是编译)

C语言中字符串和数字的相互转换实现代码

如何寻找数组中的第二大数

c++基础语法:构造函数初始化列表

解析C#中不一样的大小写转换

精品推荐
分类导航