网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Visual C++利用多线程模拟并行计.
.C语言库函数.
.C++ 中不规则窗体的快速显示.
.VC中利用人工智能解决八迷宫问题.
.websphere新建C/C++客户机.
.C++/CLI思辨录之Object的对象布局.
.写好C程序的秘籍(强!).
.数据结构学习(C++)之图.
.怎样建立简单的任务栏应用程序.
.C++:谁动了我的指针.
.c/c++中结构体(struct)知识点强化.
.数据结构学习(C++)之稀疏矩阵.
.完美支持98、2000系统自定义打印.
.深入浅出Win32多线程程序设计之基.
.XML Web Service 数据交换.
.深度探索C++对象模型(4).
.CPP程序--陀螺又称旋转矩阵.
.BDE错误码对照表.
.GCC参数详解.
.实现目录树菜单.

银行常用的打印程序

发表日期:2008-3-8


/*如:
输入:25001 输出:贰万 伍仟 零 壹元 输入:123.45 输出:壹佰 貳拾 叁元 肆角 伍分
*/
#include<stdio.h>
#include<stdlib.h> char *p[10]={"零","一","二","三","四","五","六","七","八","九"}; int In_Save(char a[], char b[]);/*输入并存储数据*/
void Print_Zh(char a[], int len);/*输出整数部分 */
void Print_X(char a[]);/*输出小数部分 */ int main(void)
{
   char Zh_Shu[26], X_Shu[10];
   int len;
  
   len=In_Save(Zh_Shu, X_Shu);
   Print_Zh(Zh_Shu, len);
   Print_X(X_Shu);
  
   system("pause");
   return 0;
} int In_Save(char a[], char b[])
{
   char ch;
   int i, j;
  
a: puts("输入一个数:");
   scanf("%c", &ch);
   while(ch != '\n')/*存储整数部分*/
   {
      i=0;
      j=0;
      while(ch != '.' && ch >= '0' && ch <= '9')
      {
         a[i++]=ch;
         scanf("%c", &ch);
      }  
      if(ch == '.')/*存储小数部分*/
      {
         scanf("%c", &ch);
         while(ch != '\n' && ch >= '0' && ch <= '9')
         {
            b[j++]=ch;
            scanf("%c", &ch);
         }  
         if(b[4] >= 5)/*四舍五入*/
          b[3] += 1; 
      }
      else if(ch == '\n')/*注重没有输入小数的情况*/
       ;
      else/*输入错误(主要指输入非数字符号)可以重试*/
      {
         puts("输入错误!请重试");
         goto a;
      }   
   } 
   return i;
} void Print_Zh(char a[], int len)
{
   int i, j, flag1, flag2, flag3;
   flag1=(a[len-6]=='0' && a[len-7]=='0' && a[len-8]=='0');
   flag2=(a[len-14]=='0' && a[len-15]=='0' && a[len-16]=='0');
   flag3=(a[len-22]=='0' && a[len-23]=='0' && a[len-24]=='0');
   printf("你输入了:\n");
   for(i=0,j=len; i<len && j>0; i++,j--)
   {
      if(a[i] == '0' && i != len-1)
      {
         if((j == 5 && flag1) (j == 13 && flag2) (j == 21 && flag3 ))
          ; /*不重复读万,如将1000000050误读作一十亿万零五十圆*/
         else if((j == 21 && ! flag3 )(j == 5 && ! flag1)(j == 13 && ! flag2))
          printf("万");    /*正确的读法应该是一十亿零五十圆*/   
         else if(j == 9 j == 17 )/*重复读亿*/
          printf("亿");
       else if(a[i+1] == '0' && i != len-1)/*不重复读零*/
          ;
         else if(a[i+1] != '0' && i != len-1) 
          printf("零");
         else
          ;
      }   
      else if(a[i] == '0' && i == len-1)
       ;
      else if(a[i] != '0')
      {
         switch(a[i])/*读入数字*/
         {
            case '1': printf("%s",p[1]); break;
            case '2': printf("%s",p[2]); break;
            case '3': printf("%s",p[3]); break;
            case '4': printf("%s",p[4]); break;
            case '5': printf("%s",p[5]); break;
            case '6': printf("%s",p[6]); break;
            case '7': printf("%s",p[7]); break;
            case '8': printf("%s",p[8]); break;
            case '9': printf("%s",p[9]); break;
            default:  printf("error"); ; break;
         }  
         switch(j)/*读入单位*/
         {
            case 2: printf("%s","十"); break;
            case 3: printf("%s","百"); break;
            case 4: printf("%s","千"); break;
            case 5: printf("%s","万"); break;
            case 6: printf("%s","十");  break;
            case 7: printf("%s","百"); break;
            case 8: printf("%s","千"); break;
            case 9: printf("%s","亿"); break;
            case 10: printf("%s","十");  break;
            case 11: printf("%s","百");  break;
            case 12: printf("%s","千");  break;
            case 13: printf("%s","万");  break;
            case 14: printf("%s","十");  break;
            case 15: printf("%s","百"); break;
            case 16: printf("%s","千"); break;
            case 17: printf("%s","亿"); break;
            case 18: printf("%s","十");  break;
            case

上一篇:一个排序用的C++函数模板 人气:880
下一篇:一个有趣的问题的C语言编程 人气:471
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐