Я не могу найти ошибку на do-while. Цикл продолжается, если я отвечу «N» на вопрос. (Приложение предназначено для поиска среднего значения высоты неопределенного числа людей).Не нашел ошибку
#include <stdio.h>
#include <stdlib.h>
/*
*
*/
int main(int argc, char** argv) {
int i;
float measure[i],sum,average;
char sex;
char yn;
do{
for(i=1;i;i++) {
printf("Persoa %d",i);
printf("\nIndique se é home (H) ou muller (M): ");
scanf("%s",&sex);
while((sex != 'M') && (sex != 'H'))
{
printf("Lo ha escrito mal.");
printf("\nIndique se é home (H) ou muller (M): ");
scanf("%s",&sex);
}
printf("Indique a súa measure (en metros): ");
scanf("%f",&measure[i]);
sum=sum+measure[i];
printf("\nDesea seguir? (Y/N): ");
scanf("%s",&yn);
while((yn != 'Y') && (yn != 'N'))
{
printf("Lo ha escrito mal.");
printf("\nDesea seguir? (Y/N): ");
scanf("%s",&yn);
}
}
}while(yn == 'Y');
average=sum/i;
printf("\nA media de measures é: %f m.",average);
return (EXIT_SUCCESS);
Нужна помощь ребятам. Мне нужно отправить это моему учителю завтра. Я нуб на этом языке :(
Это выглядит как C/C++, а не C#. –
Что такое 'for' for? У вас всего один цикл, так что вы можете самостоятельно отслеживать переменную 'i', без' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' – SWeko
Вызов scanf() повреждает стек, все возможно. Переменная yn равна% c, а не% s –