你的任务是写一个程序进行字符识别。别担心,你只需要识别1, 2, 3,如下:
.*. *** ***
.*. ..* ..*
.*. *** ***
.*. *.. ..*
.*. *** ***
输入仅包含一组数据,由6行组成。第一行为字符的个数n(1<=n<=10)。以下5行每行包含4n个字符。每个字符恰好占5行3列,然后是一个空列(用"."填充)。
输出应包含一行,即识别出的各个字符。
3.*..***.***..*....*...*..*..***.***..*..*.....*..*..***.***.
123
水题一个
判断字符表示哪个数字 只需直接看数组的第四行每四个字符中*号的位置就行了
#include<iostream> #include<cstring> using namespace std; int main() { int n,k,i,j; char a[5][45],b[5]; memset(a,0,sizeof(a)); cin>>n; for(i=0;i<5;i++) for(j=0;j<4*n;j++) cin>>a[i][j]; /*for(j=0;j<4*n;j++) cout<<a[3][j]<<" "; cout<<endl; */ for(j=1;j<=n;j++) { int l=1; for(i=4*(j-1);i<4*j;i++) { b[l]=a[3][i]; if(b[l]=='*') { k=l; //cout<<k<<endl; if(k==2) cout<<'1'; else if(k==1) cout<<'2'; else cout<<'3'; } l++; } } cout<<endl; }
中南大学 oj 1330 字符识别,布布扣,bubuko.com
原文地址:http://blog.csdn.net/fanerxiaoqinnian/article/details/37365671