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

原创 2016年05月30日 17:15:00
#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语言】在终端输入多行信息,找出包含"ould"的行,并打印改行

/* 在终端输入多行信息,找出包含"ould"的行,并打印改行。 如: Au,love could you and I with fate conspire To grasp this sorry s...

C语言之文件操作04——输入矩阵a,b,求乘积c,并打印a,b,c到文件

//文件与数组结合 /* ========================================================= 题目:输入矩阵a,b,求乘积c,并打印a,b,c到D盘文件...

中文man手册:stty - 改变并打印终端行设置

中文man手册:stty - 改变并打印终端行设置 2010-03-23 8:40 本文出自:http://www.cmpp.net 作者: (2001-09-23 13:05:0...

C语言小试题:找出M行N列矩阵的行最大值,存入数组并输出。

输入M行N列的矩阵,求每一行的最大值,并按相应的次序将其存放到长度为M的一维数组中,然后输出。...

C语言——确定某数比特位中1的个数并打印其32位比特数值

思想其实也谈不上什么思想,这个题目相对还是简单的。首先,你得知道怎么判断某位是不是1,这个用模2就可以解决,比如:其它数字也是如此,因此就可以得出结论:模2为0的,其最低位就是0.反之为1接下来就是要...
  • summy_J
  • summy_J
  • 2017年06月17日 18:33
  • 366

linux下c语言递归法查找文件,并打印绝对地址

c语言递归法查找指定目录下的文件或目录   本代码是个人学习过程中写下的小练笔,如果您发现问题,欢迎指正。 编译环境:linux+gcc, windows下尚未测试 #include #incl...

C语言:分别输入两段字符串,并找出其中的最大公共字符串

面试中遇到的,后来看到了有大神的解答,有的还是不大明白,就把自己的贴出来:#include #include void m_p_str(char *str_1,char *str_2) { i...

c语言找出100以内的素数

  • 2014年12月25日 22:46
  • 211B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言;在终端输入多行信息,找出包含“ould”的行,并打印改行。
举报原因:
原因补充:

(最多只允许输入30个字)