C言語プログラミング、関数の問題です。

C言語プログラミング、関数の問題です。 「double型の正の値を小数点以下の指定した桁数までとなるように四捨五入関数round_toを作成し、それを使ってキーボードから入力した実数を指定した桁数までとなるように四捨五入するプログラムを作成せよ。」 という問題で、これは参考書に解答例があったのですが↓ #include <stdio.h> double round_to (double, int); double round_to (double x, int n) { double mul = 1, result; //ココ for(int i = 0; i < n; i++) mul = mul * 10; result = (int) (x * mul + 0.5) / mul; return result; } int main (void) { double val, rounded; int n; printf("数値? "); scanf("%lf", &val); printf("小数点以下の桁数? "); scanf("%d", &n); rounded = round_to(val, n); printf("%f\n", rounded); return 0; } コード中に//ココと書いた部分がわかりません。 このような書き方(mul = 1, resultとカンマで二つの情報をつけている??)は初めてですが、どのような意味なのでしょうか…?関数が特に苦手なので的外れでしたらすみません。

C言語関連 | プログラミング41閲覧xmlns="http://www.w3.org/2000/svg">25

2人が共感しています

ベストアンサー

0

double型の変数mulとresultを宣言し、mulに1を入れています。 double mul = 1; double result; と書くのと同じです。

ThanksImg質問者からのお礼コメント

分かっていなかったところをダイレクトに突いて頂いました、大変助かりました。 皆さまもありがとうございました!

お礼日時:9/16 22:57

その他の回答(3件)

0

>カンマで二つの情報をつけている 最早答えは出ていますが、コンマ演算子の働きによるものです コンマ演算子 - Wikipedia https://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%9E%E6%BC%94%E7%AE%97%E5%AD%90 *** for文の中でiとjと一緒に使ってますが、これもそれです ,を使うと、一緒に併記できます k6q9xQ - Online C Compiler & Debugging Tool - Ideone.com https://ideone.com/k6q9xQ #include <stdio.h> int main(void) { int i, j; for(i=0, j=2; i<9; i++, j+=3){ printf("i=%d, j=%d\n", i, j); } return 0; }