有一道题,想了整整半天,还是没一点办法,求思路不求代码!
编写一个程序,一行行的读取输入行,直至到达文件尾,算出每行输入的长度,然后把最长的打印出来。(假设每行长度不超过1000个字符)求伪代码,思路。不要源代码代码。我刚学的,希望大师们指点一下,非常谢谢!
不要源代码,只求思路。谢谢!
2015-03-19 23:11
2015-03-19 23:13

2015-03-19 23:44

2015-03-20 08:50

2015-03-20 08:53
程序代码:
#include <stdio.h>
int main(int argc, char** argv) {
int ch = 0;
long int len = 0, max = 0, pos= 0;
FILE *fp = NULL;
if(argc != 2) return 1;
if(!(fp = fopen(argv[1], "rb"))) return 1;
while(!feof(fp)) {
while((ch = getc(fp)) != '\n' && ch != EOF) len++;
if(max < len) {
max = len;
pos = ftell(fp) - 1;
}
len = 0;
}
fseek(fp, pos, SEEK_SET);
fseek(fp, -max, SEEK_CUR);
while((ch = getc(fp)) != '\n' && ch != EOF) putchar(ch);
fclose(fp);
return 0;
}

2015-03-20 14:21
2015-03-20 14:25
2015-03-20 22:31
2015-03-20 22:37
2015-03-20 22:40