Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программирование на языке C

НАТАЛЬЯ КОСОЛАПОВА Ученик (152), на голосовании 4 месяца назад
Почему в конце выдает единицу, если четных чисел не писать вообще?

#include <stdio.h>
int main ()
{
int a,b=0;
scanf("%d",&a);
while(a!=0)
{
scanf("%d",&a);
if(a %2==0){
b=b+1;}
else
b=0;
}
printf ("%d\n", b);
return 0;
}
Голосование за лучший ответ
damn Просветленный (47322) 5 месяцев назад
Попробуй перенести scanf("%d", &a); в конец цикла while. Тогда новое значение для a будет считываться после проверки на чётность.
И убери блок else, так как нам не нужно обнулять b на каждой итерации, если число нечётное.
НАТАЛЬЯ КОСОЛАПОВАУченик (152) 5 месяцев назад
спасибо, теперь получилось
Похожие вопросы