Q.C言語で以下のコードを実行した時、ans の値(printfでの表示)はどのようになるでしょうか?
1問目
int ans; ans = 1/2 + 1/2 + 1/2 + 1/2; printf( "and = %f\n" , ans );
2問目
int ans; ans = (double)1/2 + 1/2 + 1/2 + 1/2; printf( "and = %f\n" , ans );
3問目
int ans; ans = (double)1/2 + (double)1/2 + 1/2 + 1/2; printf( "and = %f\n" , ans );
4問目
double ans; ans = (double)1/2 + (double)1/2 + 1/2 + 1/2; printf( "and = %f\n" , ans );
5問目
double ans , r; r = 1; ans = (double)1/2 + (double)1/2 + 1/2 + r/2; printf( "and = %f\n" , ans );
6問目
double ans; ans = 1/2; printf( "and = %f\n" , ans );
答えは以下のようになります。
1問目:0.000000
2問目:0.000000
3問目:0.000000
4問目:1.000000
5問目:1.500000
6問目:0.000000
いかがでしょうか?
合っていましたか?
コメント