#include<stdio.h>
#include<math.h>
int main()
{
char a[11][20]={"零衡旁","壹","贰","叁","肆","伍","陆","柒","捌","玖"}
int n
while(scanf("%d",&n)!=EOF)
{
int t=0,b[111]={0},k=0
t=n
while(t!=0)//个位上的书提取出来
{
b[k++]=t%10
t/=10
}
for(int i=0i<10i++)//百位
{
if(b[2]==i)
printf("%s佰",a[i])
}
for(int i=0i<10i++)//十位
{
if(b[1]==i)
{
if(b[1]!=0)
printf("%s拾咐陪橡",a[i])
else
printf("零")
}
}
for(int i=0i<10i++)//个位
{
if(b[0]==i)
{
if(b[0]!=0)
printf("%s元整",a[i])
else
printf("元整")
}
}
printf("\n")
}
return 0
}
希望能帮到你,乱吵望采纳;
#include<iostream.h>
#include
<math.h>
void
main()
{
double
x,i=10000000
int
j=0
unsigned
int
quotient,remainder
bool
beginFlag=0,zeroFlag=0
cout<<"请输入预转换数额(小于1亿):"
cin>>x
while
(x>=100000000
)
{
if
(j>=2)
{
cout<<"你的错误输入已达3次,你逗咐无权再输入!"<<endl
return
}
cout<<"你输入的金额超出转换范围,请重新输入!"<<endl
cout<<"请输入预转换数额(小于1亿):"
cin>>x
j++
}
if
(x<=0)
{
cout<<"零元整"<<endl
return
}
x=floor(x*100
+0.5)/100
//小数点后2位四舍五入
while
(i>0.001)
{
if
(i>0.9)
quotient=(unsigned
int)floor(x/i)
else
{
if
(i>=0.099)
quotient=(unsigned
int)floor(x*10)
else
quotient=(unsigned
int)floor(x*100)
}
remainder=quotient%10
if
(remainder!=0)
beginFlag=1
if
((zeroFlag==1)
&&
(beginFlag==1)
&&
(i>1000)
&&
(remainder>0))
cout<<"零"
switch
(remainder)
//输出大写数字槐指拿
{
case
0:
break
case
1:
cout<<"壹"
break
case
2:
cout<<"贰"
break
case
3:
cout<<"叁"
break
case
4:
cout<<"肆"
break
case
5:
cout<<"伍"铅搭
break
case
6:
cout<<"陆"
break
case
7:
cout<<"柒"
break
case
8:
cout<<"捌"
break
case
9:
cout<<"玖"
break
}
if
(remainder>0)
zeroFlag=0
else
if
(beginFlag==1)
zeroFlag=1
if
(beginFlag==1)
//输出单位
{
if
((i==10000000)
&&
(remainder>0))
cout<<"仟"
if
((i==1000000)
&&
(remainder>0))
cout<<"百"
if
((i==100000)
&&
(remainder>0))
cout<<"十"
if
(i==10000)
cout<<"万"
if
((i==1000)
&&
(remainder>0))
cout<<"仟"
if
((i==100)
&&
(remainder>0))
cout<<"百"
if
((i==10)
&&
(remainder>0))
cout<<"十"
if
(i==1)
cout<<"元"
if
((i>=0.09)
&&
(i<1)
&&
(remainder>0))
cout<<"角"
if
((i>=0.009)
&&
(i<0.1)
&&
(remainder>0))
cout<<"分"
}
i=i/10
}
cout<<"整"<<endl
}
#include "stdafx.h"#include<stdio.h>
#define NUM1 1
#define NUM2 2
#define NUM3 3
#define NUM4 4
#define NUM5 5
#define NUM6 6
#define NUM7 7
#define NUM8 8
#define NUM9 9
#define NUM 10
#define NUM10 11
#define NUM100 12
#define NUM1000 13
#define NUM10000 14
#define NUM100000 15
#define NUM1000000 16
#define NUM10000000 17
#define NUM100000000 18
#define NUM1000000000 19
#define NUM10000000000 20
void show_num(int *save,int count)
{
int i=count
while(i>=0)
{
switch(save[i])
{
case 1:
printf("一")
break
case 2:
printf("二")
break
case 3:
printf("三")
break
case 4:
printf("四")
break
case 5:
printf("五")
break
case 6:
printf("六")
break
case 7:
printf("七")
break
case 8:
printf("八")
break
case 9:
printf("九")
break
case NUM10:
printf("十")
break
case NUM100:
printf("百")
break
case NUM1000:
printf("睁链燃千唤哪")
break
case NUM10000:
printf("万"悉虚)
break
case NUM100000:
printf("十")
break
case NUM1000000:
printf("百")
break
case NUM10000000:
printf("千")
break
case NUM100000000:
printf("亿")
break
default:
break
}
i--
}
printf("\n")
}
int main()
{
long int num=0,i=0
int save[20]={0}
printf("请输入要大写的数值:")
scanf("%d",&num)
while(num)
{
save[i]=num%10
num=num/10
save[i+1]=NUM10+i/2
i+=2
}
show_num(save,i-2)
return 0
}
如果有需要,自己太添加,就在那个switch里面,还有宏,
但是不能超过你定义的类型的最大值,否则会出错哦
汉字部分自己改把
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)