Почему при выполнении данного кода выполняются оба условия? - C (СИ)
Формулировка задачи:
Здравствуйте!!! подскажите знающие люди почему при выполнении данного кода выполняются оба условия. при grade =='7' программа выполняет как истинное действие так и ложное...
#include<stdio.h> #pragma warning (disable:4996) int main(void) { char grade; unsigned int a_Count = 0; unsigned int b_Count = 0; unsigned int c_Count = 0; unsigned int d_Count = 0; unsigned int f_Count = 0; while ((grade = getchar())!= EOF) { //printf("%c\n", grade); if ( grade =='7') { a_Count++; printf("%c\n", grade); //grade = 0; //continue; } else { printf("%s\n","ne tot simvol"); } //printf("%c\n", grade); } printf("a: %d\n", a_Count); printf("b: %d\n", b_Count); printf("c: %d\n", c_Count); printf("d: %d\n", d_Count); printf("f: %d\n", f_Count); getch(); }
Решение задачи: «Почему при выполнении данного кода выполняются оба условия?»
textual
Листинг программы
else if (grade != '\n')
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д