Я пытаюсь прочитать файл, а затем вывести файл по символам. Я хочу, чтобы пользователь ввел число, которое будет отображать количество строк.
Без следующей строки мой код будет отображать весь текстовый файл. если (y == lineCount) перерыв;
Предполагается, что эта строка прерывает цикл, когда количество подсчитанных символов новой строки равно числу, введенному пользователем.
Я могу подсчитать количество символов новой строки и отобразить это, но когда я пытаюсь разорвать цикл после достижения определенного количества новых строк, код прерывается после 1 символа
#include <stdio.h>
int main ( int argc, char *argv[] )
{
FILE *file = fopen( argv[1], "r" );
int lineCount, x, y;
printf("enter a number of lines of lines to be displayed\n");
scanf("&d", &y);
while ( ( x = fgetc( file )) != EOF ) //read characters
{
printf( "%c", x ); //print character
if (x == '\n') //check for newline character
lineCount++;
if (y == lineCount) //check for newLine character
break; //??? y = lineCount after 1 character???
}
printf( "%d lines in the text file\n", lineCount ); //testing the newline characters was being read
fclose( file );
}