C言語で、下記のようにpow, sqrt, ceil...等を使用する場合
プレースホルダは%fでないとエラーとなってしまう理由は何なのでしょうか。
調べると、それぞれ使われるデータ型は以下のとおりで、
%d ・・・整数
%f ・・・浮動小数点型
例えば powの場合 出力値が8なので整数型(つまり%dでもOK)ではないか
と疑問に感じました。
printf("%f\n", 5.0 * 4); /*20.000000*/ printf("%d\n", 5 * 4); /*20*/ printf("%f\n", pow(2, 3)); /*8*/ printf("%f\n", sqrt(36)); /*6*/ printf("%f\n", ceil(36.356)); /*37*/ printf("%f\n", floor(36.356)); /*36*/
本日 Cを始めたばかりで、ど素人の質問で恐縮ですがご教示ください。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/29 14:30