У меня есть проект во вторник, и все работает, кроме этого крошечного пятна.
void main ()
{
struct CHANNEL uChan;
int flag = 0;
//get name of channel
printf("Enter the name of the channel: ");
fgets(uChan.name, 15, stdin);
//positive check loop from cylinderVolume.c
do
{
flag = 1;
printf("Please give roughness coefficient n, channel slope, width of channel and the maximum depth: ");
scanf("%lf %lf %lf %lf ",&uChan.n, &uChan.slope, &uChan.width, &uChan.maxDepth);
if(uChan.n <= 0.0 || uChan.slope <= 0.0 || uChan.width <= 0.0 || uChan.maxDepth <= 0.0)
{
printf("All values must be greater than zero.\n");
flag = 1;
}
else
flag = 0;
} while(flag == 1);
return;
}
(uChan - это структура, все ее члены определены здесь), когда я запускаю это (с остальнымимоего кода) он будет запрашивать 5 входов в строке scanf и независимо от того, что я ввожу в fgets, он всегда будет выводить 'á'