各位大虾,烦人的c语言问题,求救求救求救!!!!!!!!!!!
问题》
写一个程序,其命令行包含一个字符串参数s,运行中由标准输入读入一系列正文行。该程序将所有行依次输出,并在那些包含字符串s的行前面加一个“*”。
#include <stdio.h>
enum { MAXLENTH = 1024};
int getline(char line[], int limit);
int main (int argc, char *argv[])
{
char line[MAXLENTH], *s;
char *line0, *s0;
s = *++argv;
while(getline(line, MAXLENTH) > 0)
{
line0 = line;
s0 = s;
while(*line0 != '\0')
{
if(*line0 == *s0)
{
++line0;
++s0;
if(*s0 == '\0')
{
break;
}
else
{
continue;
}
}
else
{
++line0;
s0 = s;
continue;
}
}
if( *s0 == '\0')
{
putchar('*');
putchar(' ');
printf("%s", line);
}
else
{
printf("%s", line);
}
}
return 0;
}
int getline(char line[], int limit)
{
int i = 0, c;
while (i < limit - 2 && (c = getchar()) != EOF && c != '\n')
{
line[i] = c;
++i;
}
if (c == '\n')
{
line[i] = c;
++i;
}
line[i] = '\0';
return i;
}
该程序目前编译执行后能够输入一行立即输出一行,满足题目的基本要求。
***但是不能实现输入所有行再依次输出,如果要实现依次输出的话,我想也需要定义很多数组,而且输入的行数不定,因此数组的个数也不能确定。。。。
请各位大虾不吝赐教!!!多谢先!
还有,我学习c语言也有好几个月了,怎么编程还是没有感觉。想上面这条题目,我费了一天多的时间才搞出来。请问高手,编程前需要画流程图吗???请千万推介一本好的流程图设计的书,个人感觉流程图清晰了,编程相当容易!
还有拿到题目感到无从下手怎么办????