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

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#define MAX 1000
int getline(char *line, int limit)
{
 int ch = 0;
 int i = 0;
 while (limit-- && ((ch = getchar()) != EOF) && (ch != '\n'))
 {
  line[i++] = ch;
 }
 if (ch == '\n')
 {
  line[i++] = '\n';
 }
 line[i] = '\0';
 return i;
}
char *my_strstr(char *arr1,char *arr2)
{
 assert(arr1);
 assert(arr2);
 char *p = arr1;
 char *s1 = p;
 char *s2 = arr2;
 while (*s1 != '\0')
 {
  s1 = p;
  s2 = arr2;
  while ((*s1 != '\0') && (*s2 != '\0') && (*s1 == *s2))
  {
   s1 ++;
   s2 ++;
  }
  if (*s2 == '\0')
  {
   return p;
  }
  p++;
 }
 return NULL;
}
 
int main()
{
 char *p = "ould";
 char line[MAX] = {0};
 while (getline(line, MAX - 1))
 {
  if (my_strstr(line, p))
  {
   printf("%s\n", line);
  }
 }
 system("pause");
 return 0;
}

wKiom1Y96RnifeCBAAE0mOTEF_4529.jpg

阅读更多
个人分类: C语言
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭