C 언어 - 터미널에서 여러 줄 정보를 입력하여 "ould"가 포함된 줄을 찾아 줄을 인쇄합니다.

1350 단어
질문:
터미널에 여러 줄 정보를 입력하고 'ould' 를 포함하는 줄을 찾아서 줄을 인쇄합니다.
예:
Au,love could you and I with fate conspire
To grasp this sorry scheme of things entire,
Would not we shatter it to bitd �C and then.
터미널에서 상술한 문자, 출력
Au,love could you and I with fate conspire
Au,love could you and I with fate conspire
To grasp this sorry scheme of things entire,
Would not we shatter it to bitd �C and then.
Would not we shatter it to bitd �C and then.
#include<stdio.h>
#include<string.h>
#define MAX 1000
int getline(char line[])
{
	int limit = MAX - 1;
	int ch = 0;
	int i = 0;
	while ((ch = getchar()) && (--limit) && ch != '
' && ch != EOF) { line[i] = ch; i++; } if (ch == '
') { line[i++] = '
'; } line[i] = '\0'; return i; } char find(char *a,char *b,int m,int n) { int i,j, k; i = k = 0; j = 0; while (i<m && j<n) { if (a[i] == b[j]) { i++; j++; } else { j = 0; k++; i = k; } } if (j >= n) { return &a ; } else { return 0; } } int main(void) { char line[MAX]; char *p = "ould"; int  m,n; m = strlen(line); n = strlen(p); while (getline(line)) { if (find(line, p,m,n)) { printf("%s", line); } } }

좋은 웹페이지 즐겨찾기