• 大小: 2.45KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-02-01
  • 标签: 转换  汉字  数字  

资源简介

这是一个数字转换代码,如果输入壹仟叁佰,输出1300,最多可以输出二十位数字


资源截图

代码片段和文件信息

#include
#include
using namespace std;
 
void getChinese( unsigned  int number );
string GetStringOfCount(string &s size_t index);

int main()
{
unsigned int number;
cout<<“请输入您想输入的数字(十位数以内且开头不能是0 ),退出输入-1  : “;

while( cin>>number && ( -1!=number ) )
{
getChinese(number);

cout<<“\n请输入您想输入的数字(十位数以内且开头不能是0 ),退出输入-1  : “;
}

return 0;
}

void getChinese( unsigned  int number )
{
const int size=10;
int data[size] = {0};
string str1=“零壹贰叁肆伍陆柒捌玖“;
string str2=“错拾佰仟萬拾佰仟亿拾“;

int count=0;//计算输入数字的位数,并把每位数保存在数组中
if( 0 == number )
cout<<“零“< else{
while ( count < size  &&  ( 0!=number ) )
{
data[count]=number%10;
number /= 10;
count++;
}
}

//unsigned int 型对象的值是不可能以0 开头的(非零值),也不可能超出十位,这个判断可以不要?待测试
if( 0==data[count] && 0!=number )
cout<<“数字开头不能为 0 ,请重新输入 !“< if( count > size )
cout<<“输入的数字太大,请重新输入 !“<

/****************************************************************

评论

共有 条评论