Не работает scanf и getchar после циклов - C (СИ)
Формулировка задачи:
Добрый день, проблема возникла следующая - функции гетчар и сканэф не вызываются после циклов for.
Если поставить эти функции до циклов, то все нормально, происходит ожидание ввода, ввод, дальнейшее выполнения программы. А вот если эти функции стоят после цикла или внутри него, то они просто напросто не работают, не происходит задержка для ввода.
В чем проблема?
заранее спасибо.
вот сам код. не работает гетчар в цикле, который начинается с for(k=2;f!=1;k++), аналогично в этом же месте со сканомэф если на на него заменить гетчар
причем в самом первом вложенном цикле все прекрасно работает.
#include<stdlib.h> #include<time.h> #include<conio.h> #include<stdio.h> #define M 54 #define N 4*M void Init(int *a, int n) { int i, j, b[M], count[M], len = M; for(i = 0; i < M; i++) { b[i] = i; count[i] = N / M; } for(i = 0; i < n; i++) { j = rand() % len; a[i] = b[j]; --count[j]; if (!count[j]) { b[j] = b[len - 1]; count[j] = count[len - 1]; --len; } } } int main() { int deck[N], bet[3][20], chi[4][20], pos=0, i=0, p=0, m=0, k=0,f=0,c=0; srand(time(NULL)); Init(deck, N); while(pos!=311) { for(p=0; p<3;p++) { scanf("%d", &bet[p][0]); } for(m=0;m<2;m++) { if(m==1) { chi[3][0]=deck[pos]; pos++; } for(i=0;i<3;i++) { chi[i][m]=deck[pos]; pos++; } } for(k=2;f!=1;k++) { c=getchar(); if(c=='y') { chi[0][k]=pos; pos++; } else { f=1; } } } getch(); }
Решение задачи: «Не работает scanf и getchar после циклов»
textual
Листинг программы
scanf("%d%*c", &bet[p][0]);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д