码迷,mamicode.com
首页 > 其他好文 > 详细

在终端输入多行信息,找出包含“ould”的行,并打印改行

时间:2015-05-11 21:54:48      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:

<span style="font-size:24px;">#include <stdio.h>
#include<string.h>
#define MAX 1000
//读取字符串函数
int getline(char line[],int max)//max为数组剩余长度
{
	char ch;
	int i=0;
	while(max>0 && (ch=getchar())!=EOF && ch!='\n')
	{
		line[i]=ch;//读取字符放到数组Line中
		i++;
		max--;
	}
	if(ch=='\n')
		line[i++]='\n';
	line[i]='\0';
	if(i>0)   //如果读取成功,返回1,读取不成功,返回0
		return 1;
	else
		return 0;

}
//匹配字符串
int match(char line[],char *mat)
{
	int i=0;
	int j=0;
	for(i=0;i<strlen(line);i++)
	{
		for(int k=i,j=0;j<strlen(mat);j++,k++)
		{
			if(line[i]!=*(mat+j))
				break;
		}
		if(*(mat+j)=='\0'&& k>0)//匹配成功
			return 1;
	}
}

int main()
{
	char line[MAX];
	char *mat="ould";
	while(getline(line,MAX))
	{
		if(match(line,mat))
			printf("%s\n",line);
	}
	return 0;
}</span>

在终端输入多行信息,找出包含“ould”的行,并打印改行

标签:

原文地址:http://blog.csdn.net/sunshine552/article/details/45648795

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!