/* 功能:对一张表进行查询,该死的密保卡头都看晕了! 作者: 日期:2010.01.22 */
#include <stdio.h> #include <string.h>
/*函数定义*/ void InitTable(int table[][9]); int Search(int i,int j,int table[][9]); void PrintTable(int table[][9]);
/*主函数*/ void main() { int table[11][9]={0,}; /*输入3组*/ char str[6];
/*c初始化*/ InitTable(table); /*打印*/ PrintTable(table);
printf("例如:b1a2c3\\n"); printf("输入:\n_"); while(1) { scanf("%s",str); /*弱检测,是否符合*/ if(strlen(str)!=6) { printf("输入不符合,重新输入\n"); printf("输入:\n_"); continue; } /*请自己确保输入正确..不在检测*/ /*查询以及输出结果*/ printf("%d,",Search(str[0]-'a'+1,str[1]-'0',table)); printf("%d,",Search(str[2]-'a'+1,str[3]-'0',table)); printf("%d,",Search(str[4]-'a'+1,str[5]-'0',table)); printf("\n输入:\n_"); } } /***************************函数定义***************************************/
/*初始化表格*/ void InitTable(int table[11][9]) { printf("你的序列号是:3000 6298 9105\n"); /*初始化表格*/ /*A*/ table[1][1]=8; table[1][2]=54; table[1][3]=34; table[1][4]=76; table[1][5]=3; table[1][6]=52; table[1][7]=93; table[1][8]=13; /*B*/ table[2][1]=2; table[2][2]=92; table[2][3]=65; table[2][4]=88; table[2][5]=8; table[2][6]=74; table[2][7]=40; table[2][8]=40; //c
table[3][1]=81; table[3][2]=73; table[3][3]=64; table[3][4]=73; table[3][5]=71; table[3][6]=13; table[3][7]=38; table[3][8]=69; //d
table[4][1]=42; table[4][2]=17; table[4][3]=6; table[4][4]=69; table[4][5]=69; table[4][6]=23; table[4][7]=75; table[4][8]=37; //e
table[5][1]=7; table[5][2]=6; table[5][3]=34; table[5][4]=71; table[5][5]=45; table[5][6]=36; table[5][7]=81; table[5][8]=86; //f
table[6][1]=19; table[6][2]=24; table[6][3]=90; table[6][4]=75; table[6][5]=28; table[6][6]=10; table[6][7]=65; table[6][8]=44; //g
table[7][1]=74; table[7][2]=0; table[7][3]=7; table[7][4]=11; table[7][5]=33; table[7][6]=1; table[7][7]=49; table[7][8]=91; //h
table[8][1]=62; table[8][2]=44; table[8][3]=80; table[8][4]=84; table[8][5]=93; table[8][6]=3; table[8][7]=13; table[8][8]=93; //i
table[9][1]=91; table[9][2]=76; table[9][3]=76; table[9][4]=57; table[9][5]=86; table[9][6]=51; table[9][7]=33; table[9][8]=25; //j
table[10][1]=32; table[10][2]=15; table[10][3]=0; table[10][4]=69; table[10][5]=19; table[10][6]=87; table[10][7]=87; table[10][8]=99; printf("\n"); }
/*i行,j列的值,搜索结果返回*/ int Search(int i,int j,int table[11][9]) { return table[i][j]; }
/*打印表*/ void PrintTable(int table[][9]) { char ch='a'; int i=0,j=0; for(i=0;i<11;i++) { for(j=0;j<9;j++) { if(i==0) { printf(" %d ",j); continue; } if(j==0) { printf(" %c ",ch++); continue; } if( table[i][j] >= 0 && table[i][j] <= 9 ) printf(" "); printf("%d ",table[i][j]); } printf("\n"); } printf("\n"); }
|