Как остановить цикл и распечатать все данные сразу?
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ FILE * fp1 = fopen("file.csv", "r"); char string[200], toFind[200], savedLine[200], option; char* lineOne = NULL; char* result = NULL; printf("Enter your ID Card number: "); scanf("%s", toFind); while(fgets(string, 200, fp1)){ lineOne = strtok(string, "\n"); strcpy(savedLine, lineOne); result = strstr(savedLine, toFind); if(!result){ printf("Are you sure? [y/n]: "); while ((getchar()) != '\n'); scanf("%c", &option); if(option == 'y'){ printf("%s\n", lineOne); printf("Your account is removed\n"); } if(option == 'n'){ printf("Your account is not removed.\n"); break; } } } fclose(fp1); return 0; }
Что я уже пробовал:
Этот код печатает только данные, за исключением одной строки, которую я дал номеру идентификационной карты. Но вот одна проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда он печатает одну строку из файла, он снова спрашивает меня " да " или "нет". Если я ввожу "да", он печатает одну строку и снова спрашивает у меня разрешения.
Как остановить этот цикл многократного разрешения и распечатать данные сразу?
jeron1
Можете ли вы установить точки останова и пошагово выполнить свой код (отладку)?