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

📄 40.c

📁 这是我大学4年来做过的竞赛以及老师的科研项目所积累下来的c51源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
               {
               qmh=hzk_index[sm[i]][7+(s-1)*2];
               qml=hzk_index[sm[i]][7+(s-1)*2+1];
               }
          fydisp:
          bar(0,50,500,100);
          pydisp();
               for(i=0;i<9;i++)
               {
               putnum(i*32,70,i+1,2);
               puthz((i*2+1)*16,70,qmh,qml+i+(9*page),2); 
               }
          endtop:
          end=check_key(getch());
          switch(end)
               {
                case 11:page=page+1;goto fydisp;
                case 10:page=page-1;goto fydisp;
                case 20:goto endtop;
                case 12:goto endtop;
                case 13:kd++;goto top;
                default:
                break;
               }
          puthz(kk,jj,qmh,qml+end+page*9-1,2);
          kk=kk+16;
               if(kk>300)
               {
               kk=0;
               jj=jj+16;
               }
         }
    }

    while(kd==1)                                  //字母输入状态
    {
     top1:
     bar(0,50,500,100);
     bengdisp();
         for(;;)
         {
              while(d)
              {                                   //大写字母输入
              top2:
              key1=check_key(getch());              //判断键值
                     switch(key1)
                     {                           //判断键状态
                      case 9:kk=kk+8;goto top2;
                      case 13:kd++;goto  top;
                      case 0: d=!d;goto top1;         //大小写切换
                      case 20:
                      case 11:
                      case 10: goto top2;
                      case 12:
                      kk=kk-8;
                      bar(kk,jj,kk+8,jj+16);
                             if(kk<0)
                             {
                             kk=304;
                             jj=jj-16;
                             }
                             if(jj<=120)
                             {
                             jj=120;
                             }
                             goto  top2;
                             }
                      qmh=key1*3-3;
                      kp=key1;
                      bar(0,50,500,100);
                      bengdisp();
                             for(mm=0;mm<3;mm++)
                             {
                             putzimub((mm+15)*8,50,qmh+mm,3);
                             }
                      key2=check_key(getch());
                      switch(key2)
                             {
                              case 13:kd++;goto top;
                              case 0:d=!d;goto top1;
                             }
                      goto outen;
                      }

             while(!d)
             {                                  //小写字母输入
             top3:
             bar(0,50,500,100);
             sengdisp();
             key1=check_key(getch());             //判断键值
             switch(key1)
                    {                          //判断键状态
                    case 9:kk=kk+8;goto top3;
                    case 13:kd++;goto  top;
                    case 0: d=!d;goto top1;        //大小写切换
                    case 10:
                    case 11:
                    case 20:goto top3;
                    case 12:
                    kk=kk-8;
                    bar(kk,jj,kk+8,jj+16);
                          if(kk<0)
                          {
                          kk=304;
                          jj=jj-16;
                          }
                          if(jj<=120)
                          {
                          jj=120;
                          }
                    goto top3;
                    }
              qmh=key1*3-3;
              kp=key1;
              bar(0,50,500,100);
              sengdisp();
                    for(mm=0;mm<3;mm++)
                    {
                    putzimus((mm+15)*8,50,qmh+mm,3);
                    }
              key2=check_key(getch());
              switch(key2)
                    {
                    case 13:kd++;goto  top;
                    case 0: d=!d;goto top1;
                    case 9:kk=kk+8;goto top;
                    case 12:
                    kk=kk-8;
                    bar(kk,jj,kk+8,jj+16);
                          if(kk<0)
                          {
                          kk=304;
                          jj=jj-16;
                          }
                          if(jj<=120)
                          {
                          jj=120;
                          }
                          goto top3;
                    }
             goto outen;
             }
        }
        outen:                             //从显示的三个字母中选出所需的字母
             if(d)
             {
             ii=kp*3-4+key2;
             putzimub(kk,jj,ii,3);
             kk=kk+8;
                     if(kk>288)
                     {
                     kk=0;
                     jj=jj+16;
                     }
             }
             if(!d)
             {
             ii=kp*3-4+key2;
             putzimus(kk,jj,ii,3);
             kk=kk+8;
                     if(kk>288)
                     {
                     kk=0;
                     jj=jj+16;
                     }
            }
      }

      while(kd==2)                                //数字输入状态
      {
      bar(0,50,500,100);
      numdisp();
      top4:
            for(;;)
            {
            key1=check_key(getch());               //判断键值
            switch(key1)
                   {
                   case 13:kd++;goto  top;
                   case 11:
                   case 10:
                   case 20:goto top4;
                   case 12:kk=kk-8;
                   bar(kk,jj,kk+8,jj+16);
                        if(kk<0)
                        {
                        kk=304;
                        jj=jj-16;
                        }
                        if(jj<=120)
                        { 
                        jj=120;
                        }
                  goto top4;
                  }
            putnum(kk,jj,key1,3);
            kk=kk+8;
                  if(kk>288)
                  {
                  kk=0;
                  jj=jj+16;
                  }
           }
     }

     while(kd==3)                               //字符输入状态
     {
     zifudisp:
     bar(0,50,500,100);
     zifudisp();
     bar(100,50,200,100);
           for(ks=0;ks<9;ks++)
           {
           putnum(ks*32,70,ks+1,2);
           putzifu((ks*2+1)*16,70,ks+9*page1,2);
           }
     endtop1:
     end1=check_key(getch());
     switch(end1)
           {
           case 11:page1=page1+1;if(page1>=2){page1=2;}goto zifudisp;
           case 10:page1=page1-1;if(page1<=0){page1=0;}goto zifudisp;
           case 20:goto endtop1;
           case 13:kd++;goto top;
           case 12:
           kk=kk-8;
           bar(kk,jj,kk+8,jj+16);
                  if(kk<0)
                  {
                  kk=304;
                  jj=jj-16;
                  }
                  if(jj<=120)
                  {
                  jj=120;
                  }
           goto endtop1;
           }
      putzifu(kk,jj,end1+page1*9-1,2);
      kk=kk+8;
           if(kk>300)
           {
           kk=0;
           jj=jj+16;
           }
      }
}

INDEX.C代码

unsigned   int  hzk_index[437][43]={
1, 0, 0, 0, 0, 0, 3,      16, 1, 16, 37, 18, 33,0, 0, 0, 0, 0, 0,                      1,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1, 1, 0, 0, 0, 0, 2,      16, 37,18, 33, 0,  0, 0, 0, 0, 0, 0, 0,                      2,1,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1, 1, 3, 0, 0, 0, 2,      16, 55,18, 44, 0,  0, 0, 0, 0, 0, 0, 0,                      2,1,9,3,1,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1, 1, 5, 0, 0, 0, 4,      16, 63,16, 90,18, 45, 18,57,0, 0, 0, 0,                      2,1,14,2,1,15,3,1,14,3,1,15,0,0,0,0,0,0,0,0,0,0,0,0,
1, 1, 5, 3, 0, 0, 2,      16, 78,18, 53, 0,  0, 0, 0, 0, 0, 0, 0,                      2,1,14,7,3,1,14,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

⌨️ 快捷键说明

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