逐屏打印文件内容
1 #include <stdio.h> 2 #include <stdlib.h> 3 #define A_SCREEN 5 //每次输出的行数 4 #define MAX_CHAR_EACH_LINE 100 //每行最大字符数 5 int main() 6 { 7 FILE *fp; 8 if(NULL == (fp = fopen("test", "r"))) 9 { 10 printf("file dosen't exist!"); 11 return -1; 12 } 13 int count; 14 char line[MAX_CHAR_EACH_LINE] = {' '}; 15 char input = 'n'; 16 fgets(line, MAX_CHAR_EACH_LINE, fp); 17 while(input != 'Q' && input != 'q' && !feof(fp)) 18 { 19 for(count = A_SCREEN; count > 0 && !feof(fp); --count) 20 { 21 printf("%s",line); 22 fgets(line, MAX_CHAR_EACH_LINE, fp); 23 } 24 input = getchar(); //接收用户输入 25 } 26 if(feof(fp)) 27 { 28 printf("meet end of the file!\n"); 29 } 30 else 31 { 32 printf("quit!\n"); 33 } 34 return 0; 35 }