⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cipher.c

📁 这是一个使用 informix esql/c 技术开发的银行程序的部分代码。
💻 C
字号:
#include <stdio.h>
#include <tinfo.h>
main()
  {
    char c;
    long a_num,year,month,day,hour,x,m,n,s;
    long key1,key2;
    short i,j,a;
    key1=4691813;
    key2=3181964;
    initscr();
    clear();
    move(2,20);
    printw("储 蓄 系 统 重 要 更 正 密 码 计 算 程 序");
    move(3,20);
    printw("=========================================");
    move(5,10);
    printw("营业部门编号: ");
    scanw("%ld",&s);
    move(5,24);
    printw("    %ld      ",s);
    move(7,10);
    printw("帐  号: ");
    scanw("%ld",&a_num);
    move(7,18);
    printw("    %ld      ",a_num);
    move(9,10);
    printw("修改时间:      年");
    move(9,20);
    scanw("%ld",&year);
    move(9,10);
    printw("修改时间: %4ld 年    月",year);
    move(9,28);
    scanw("%ld",&month);
    move(9,10);
    printw("修改时间: %4ld 年 %2ld 月    日",year,month);
    move(9,34);
    scanw("%ld",&day);
    move(9,10);
    printw("修改时间: %4ld 年 %2ld 月 %2ld 日    时",year,month,day);
    move(9,40);
    scanw("%ld",&hour);
    move(9,10);
    printw("修改时间: %4ld 年 %2ld 月 %2ld 日 %2ld 时",year,month,day,hour);
    c='a';
    while(c!='R'&&c!='F')
      {
        move(11,10);
        printw("币  种 (R-人民币, F-外币): ");
        scanw("%c",&c);
        c=toupper(c);
      }
    move(11,10);
    printw("币  种: ");
    if(c=='R') printw("人民币                ");
    else printw("外币                  ");
    move(13,10);
    printw("储  种 (1-整存整取, 2-活期, 3-零存整取, 4-定活两便,");
    move(14,18);
    printw("5-存本取息, 6-大额, 7-通知存款, 8-住房基金): ");
    n=0;
    while(n<1||n>8)
      {
        move(14,64);
        scanw("%ld",&n);
      }
    move(13,10);
    printw("储  种: ");
    switch(n)
      {
        case 1:
          printw("整存整取");
          break;
        case 2:
          printw("活期    ");
          break;
        case 3:
          printw("零存整取");
          break;
        case 4:
          printw("定活两便");
          break;
        case 5:
          printw("存本取息");
          break;
        case 6:
          printw("大额    ");
          break;
        case 7:
          printw("通知存款");
          break;
        case 8:
          printw("住房基金");
      }
    move(13,26);
    clrtoeol();
    move(14,0);
    clrtoeol();
    if(c=='F') n+=10;
    move(15,10);
    printw("项  目 (1-存期, 2-金额, 3-开户日期, 4-起息日期, 5-最后日期,");
    move(16,18);
    printw("6-币种, 7-定额, 8-累计利息, 9-最后月份): ");
    m=0;
    while(m<1||m>9)
      {
        move(16,60);
        scanw("%ld",&m);
      }
    move(15,10);
    printw("项  目: ");
    switch(m)
      {
        case 1:
          printw("存期    ");
          break;
        case 2:
          printw("金额    ");
          break;
        case 3:
          printw("开户日期");
          break;
        case 4:
          printw("起息日期");
          break;
        case 5:
          printw("最后日期");
          break;
        case 6:
          printw("币种    ");
          break;
        case 7:
          printw("定额    ");
          break;
        case 8:
          printw("累计利息");
          break;
        case 9:
          printw("最后月份");
      }
    move(15,26);
    clrtoeol();
    move(16,0);
    clrtoeol();
    move(17,10);
    printw("操作地点 (1-柜台业务, 2-事后监督): ");
    a=0;
    while(a!=1&&a!=2)
      {
        move(17,46);
        scanw("%hd",&a);
      }
    move(17,18);
    if(a==1) addstr(": 柜台业务");
    else addstr(": 事后监督");
    move(17,28);
    clrtoeol();
    a_num=2100000000-a_num-(year%100)*1000000-month*10000-
      day*100-hour-s*10000-n*100-m;
    if(a==1) a_num-=key1;
    else a_num-=key2;
    n=0;
    x=a_num;
    j=0;
    m=1000000000;
    for(i=1;i<=10;i++)
      {
        n+=j;
        j=x/m;
        n+=j;
        x%=m;
        m/=10;
      }
    m=n/26+97;
    n=(n%26)+97;
    move(19,10);
    printw("密  码: ");
    printw("%c",m);
    printw("%c",n);
    x=a_num;
    m=1000000000;
    j=0;
    for(i=1;i<=10;i++)
      {
        n=x/m;
        printw("%c",j+n+97);
        j=n;
        x%=m;
        m/=10;
      }
    move(20,50);
    printw("按任意键退出!");
    getch();
    endwin();
  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -