- ベストアンサー
C言語 if文について
#include <stdio.h> int main(void) { int a; printf("整数を入力してください:"); scanf("%d",&a); if(a % 10 == 5) puts("最下位の桁は5です。"); else puts("最下位の桁は5でありません。"); return 0; これでどうして読み込んだ整数値の最も下の桁が5であるかどうかを判断しているのでしょう? ifの式がいまいち理解できません。 解説できる方いませんか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>if(a % 10 == 5) 入力した数aを10で割ったあまりが5ならば という意味です。このif文が成り立てば、 >puts("最下位の桁は5です。"); こちらを出力し、成り立たなければ(つまりaを10で割ったあまりが5以外ならば) >puts("最下位の桁は5でありません。"); こちらを出力します。 %は、左オペランドを右オペランドで割ったときの剰余を求めるための演算子です。
その他の回答 (1)
- maiko0333
- ベストアンサー率19% (839/4401)
回答No.1
if(a % 10 == 5) これですね。 %はcでは余りを計算しています。 余りが5のときという意味です。