Не могу ввести строку как пользователь - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Подскажите, плз, в чем ошибка, в строках 27-28 вводится запрос на ввод строки, однако возможности ввести не предоставляется и программа идет дальше.
Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4. #include <ctype.h>
  5. #include <string.h>
  6.  
  7. int main()
  8. {
  9. char N[100];
  10. int chet,N_c;
  11.  
  12. printf("Enter integer N\n");
  13. scanf ("%s",&N);
  14. N_c=atoi(N);
  15. chet=0;
  16. while (N[chet]>='0' && N[chet]<='9')
  17. chet++;
  18. if ((N[chet]=='\0') && (N_c>0)) //Если N целое и положительное число
  19. {
  20. char file_names[254];
  21. puts("\nEnter the file names separated by commas and click Enter");
  22. gets(file_names);
  23. int chet_ch_failov=0;
  24. int i_c=0;
  25. while (file_names[i_c]!='\0')
  26. {
  27. if(ispunct(file_names[i_c]))
  28. chet_ch_failov++;
  29. i_c++;
  30. };
  31. chet_ch_failov++;
  32. if (chet_ch_failov>N_c)
  33. {
  34. printf("Vse kruto\n");
  35. }
  36. else
  37. {
  38. printf("N exceeds the number of files. Try again, please.\n");
  39. }
  40. }
  41. else
  42. {
  43. printf ("You entered a negative, or float N, or null. Try again, please.\n");
  44. }
  45.  
  46. getch();
  47. }

Решение задачи: «Не могу ввести строку как пользователь»

textual
Листинг программы
  1. char file_names[254];
  2.         puts("\nEnter the file names separated by commas and click Enter");
  3.         fflush(stdin);
  4.         gets(file_names);

Объяснение кода листинга программы

  1. Объявляется массив file_names типа char с размером 254 символа
  2. Выводится сообщение с просьбой ввести имена файлов, разделенные запятыми, и нажать Enter
  3. Используется функция fflush(stdin) для очистки буфера ввода
  4. Вводится строка с помощью функции gets(file_names)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы