> 文档中心 > 100 Days of Code-day27-cmd实现查找模式

100 Days of Code-day27-cmd实现查找模式


在cmd中实现将输入中包含特定模式或字符串的各行打印出来。

例如特定字符串为

am

如果输入的字符串为

i am a robot

那么就会打印该行。
相反,当字符串为

i wasn’t a robot

就不会打印该字符串。

实现程序:

#include#include#define MaxSize 100int getline(char *s, int maxlen);int main(int argc,char *argv[]){int found = 0;char line[MaxSize];if (argc != 2)printf("Usage:find pattern\n");else{while (getline(line, MaxSize) > 0){if (strstr(line, argv[1]) != NULL){printf("%s", line);found++;}}}printf("%d", found);return found;}int getline(char *s,int maxlen){char c;char *temps = s;while (-- maxlen > 0 && (c = getchar())!=EOF && c != '\n'){//--maxlen是为了给换行符留出空间*s++ = c;}if (c == '\n')*s++ = c;*s = '\0';return s - temps;}

在cmd终端输入如下程序及实验结果:

在这里插入图片描述