>>139
ほとんど動確とってない。不具合あれば適当に直して。

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
FILE *fp = stdin;
int i, c, line = 10;

for(i = 1; i < argc; i++) {
if(!strncmp(argv[i], "-L", 2)) {
if(sscanf(argv[i] + 2, "%d", &line) != 1) {
fprintf(stderr, "usage: head [-Ln][filrname]\n");
return -1;
}
} else if(!(fp = fopen(argv[i], "r"))) {
fprintf(stderr, "no such file, %s\n", argv[i]);
return -1;
}
}

for(i = 0; i < line && (c = fgetc(fp)) != EOF;) {
if(c == '\n') {i++;}
putchar(c);
}
fclose(fp);
return 0;
}