#include
using namespace std;
int main() {
int num;
cout << "请输入一个六位数:";
cin >> num;
string digits[10] = {"零","一","二","三","四","五","六","七","八","九"}; // 数字0-9对应的汉字
int tmp; // 用来存放每个位上的数字
// for循环实现
cout << "for循环实现:" << endl;
for (int i = 100000; i > 0; i /= 10) { // i依次为10^5,10^4,10^3,10^2,10^1,1
tmp = num / i;
cout << digits[tmp] << " ";
num %= i;
}
cout << endl;
// while循环实现
cout << "while循环实现:" << endl;
int i = 100000;
while (i > 0) {
tmp = num / i;
cout << digits[tmp] << " ";
num %= i;
i /= 10;
}
cout << endl;
return 0;
}
代码说明:
首先要声明一个int
类型的变量num
,用来存储用户输入的六位数。
声明字符串数组digits
,长度为10,数组中存放数字0-9对应的汉字。
对于每个位上的数字的转换,我们可以使用for循环或while循环来实现。以for循环为例,我们可以将数字按照从高到低的顺序依次除以10的n次方,来获得每个位上的数字,再通过求余运算得到新的数字进行下一次循环。
最后将每个数字对应的汉字输出即可。