C - 字符识别?
Description
你的任务是写一个程序进行字符识别。别担心,你只需要识别1, 2, 3,如下:
.*. *** ***
.*. ..* ..*
.*. *** ***
.*. *.. ..*
.*. *** ***
Input
输入仅包含一组数据,由6行组成。第一行为字符的个数n(1<=n<=10)。以下5行每行包含4n个字符。每个字符恰好占5行3列,然后是一个空列(用"."填充)。
Output
输出应包含一行,即识别出的各个字符。
Sample Input
3.*..***.***..*....*...*..*..***.***..*..*.....*..*..***.***.
Sample Output
123my answer:#include<iostream> #include<string> #include<cstring> #define MAX 300 using namespace std; int main() { int n; while(cin>>n) { char a[MAX][MAX]; int t[100]={0},i=0; for( i=0;i!=5;i++) cin>>a[i]; for( i=0;i!=n;i++){ if(a[3][i*4]=='.'&&a[3][i*4+1]=='*'&&a[3][i*4+2]=='.')t[i]=1; else if(a[3][i*4]=='*'&&a[3][i*4+1]=='.'&&a[3][i*4+2]=='.')t[i]=2; else if(a[3][i*4]=='.'&&a[3][i*4+1]=='.'&&a[3][i*4+2]=='*')t[i]=3; } for(int j=0;j!=i;j++) cout<<t[j]; cout<<endl; } return 0; }