【C语言】在终端输入多行,找出有“ould”的行,并打印。

<pre name="code" class="cpp">/*
在终端输入多行信息,找出包含"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 - and then.
在终端输出上述的文字,输出
Au,love could you and I with fate conspire
Would not we shatter it to bitd - and then.
*/
#include <stdio.h>
#define MAXLINE 1000  

int getline(char ar[],int max)
{
    int ch;
    int i =0;
    while((ch = getchar())!=EOF && ch != '\n'&& i < max)
    {
        ar[i] = ch;
        i++;
    }
    if(ch == '\n')
        ar[i++] = ch;
    ar[i] = '\0';
    return i;
}  

int compare(char line[],char str[])
{
    int i,j,k;
    for(i = 0;line[i] != '\0';i++)
    {
        for(j = i,k = 0;str[k]!= '\0' &&
            str[k] == line[j];j++,k++)
        {
            ;
        }
        if(k>0 && str[k] == '\0')
            return 1;
    }
    return 0;
}
int main()
{
    char line[MAXLINE];
    char str[] = "ould";  

    while(getline(line,MAXLINE))
    {
        if(compare(line,str))
            printf("%s\n",line);
    }
    return 0;
}

				
时间: 2024-10-08 20:21:31

【C语言】在终端输入多行,找出有“ould”的行,并打印。的相关文章

【c语言】在终端输入多行信息,找出包含&quot;ould&quot;的行,并打印改行

/* 在终端输入多行信息,找出包含"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 - and then. 在终端输出上述的文字,输出 Au,love could you and I with fate conspire Would not we shatter

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

<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')

仅通过崩溃地址找出源代码的出错行

作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?--错啦!我相信我的看法是不会有人反对的--那就是,程序发生了崩溃! "该程序执行了非法操作,即将关闭.请与你的软件供应商联系.",呵呵,这句 M$ 的"名言",恐怕就是程序员最担心见到的东西了.有的时候,自己的程序在自己的机器上运行得好好的,但是到了别人的机器上就崩溃了:有时自己在编写和测试的过程中就莫名其妙地遇到了非法操作,但是却无法确定到底是源代码中的哪行引起的--是不是很痛苦呢?不要紧,本

c语言代码编程题汇总:找出字符串中与输入的字母元素相同的个数以及其所对应数组的下标值

找出字符串中与输入的字母元素相同的个数以及其所对应数组的下标值 程序代码如下: 1 /* 2 2017年3月8日08:39:16 3 功能:找出字符串中与输入的字母元素相同的个数以及其所对应数组的下标值 4 */ 5 6 #include"stdio.h" 7 int main (void) 8 { 9 int i = 0, j = 0; 10 char a[100]; 11 char ch; 12 int num = 0; 13 14 printf ("please inp

c语言代码编程题汇总:找出三个数据中最大的数值

找出三个数据中最大的数值 程序代码如下: 1 /* 2 2017年3月9日12:04:37 3 功能:找出三个数据中最大的数值 4 */ 5 #include"stdio.h" 6 7 int fun(int,int,int); 8 9 int main() 10 { 11 int a ,b,c; 12 13 printf("please input three number: \n"); 14 15 scanf("%d %d %d",&

C 语言的一个错误,没找出原因

#include <stdio.h>#include <stdlib.h>#include <string.h> intmain(void){ char str[512]; char *endpstr; int N; struct struct_num { int highs[N]; int violate[N]; }; struct struct_num num; /* 获取N */ scanf("%d", &N); getchar();

ACM:每行输入一个正整数n,找出与它对应的比它大的最小的且它们对应的二进制中1的个数一样多的正整数.

#include<stdio.h> //每行输入一个正整数i,找出与他对应的比它大的最小的正整数且他们的二进制中1的个数一样多. /* 样例输入: 样例输出: 1 2 2 4 3 5 4 8 78 83 0 */ //78的二进制位1001110,有4个1:83比78大且83的二进制位1001011也是4个1. int main() { int count1,count2;//count1统计原数据对应的二进制中1的个数,count2... int a[100];//存输入的数字 int i=

【C语言】在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’

//在字符串中找出第一个只出现一次的字符.如输入"abaccdeff",则输出'b' #include <stdio.h> #include <memory.h> char OneTime(char * str) { int data[256]; char *p = str; if (*p == '\0') return '\0'; memset(data, 0, sizeof(data)); while (*p ) { data[*p++]++; //把每种字

c语言题目:找出一个二维数组的“鞍点”,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点

1 //题目:找出一个二维数组的"鞍点",即该位置上的元素在该行上最大,在该列上最小.也可能没有鞍点. 2 // 3 #include "stdio.h" 4 #include <stdlib.h> 5 int main() 6 { 7 int i,j,k,hang=1,lie=1; 8 printf("输入行"); 9 scanf("%d",&hang); 10 printf("输入列"