while (1) {
printf("A:\n");
printf("X:\n");

while (1) {
c = getchar();
if(c != '\n') /*cが\nでないなら*/
break;
}

switch (c){
case 'A':
case 'a':
printf("\nAだった\n\n");
break;
case 'X':
case 'x':
end = 1;
break;
default:
printf("\nまじめにやれ\n\n");
break;
}
if (end == 1) /*endが1なら*/
break; /*whileループを抜ける*/
}
printf("\nおわり\n");

Aとa、Xとx以外の文字を入力すると「まじめにやれ」と出力されるのはどこで判断してるのかが
分かりません。
また6,7行目と25,26秒目のifのところがイマイチ理解できません。