多分、演算子の優先度の問題です…

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
モノクマ

多分、演算子の優先度の問題です…

#1

投稿記事 by モノクマ » 2年前

お久しぶりです。考えてもわからない問題がありましたので
また質問をしに来ました。多分、演算子の優先度関連の問題だと思うのですがさっぱり分かりません。どなたかお願いしますm(_ _)m
次が問題文です。

ソースコードの空欄 (???) を埋め, 以下の実行結果を再現しなさい.
条件
- 空欄 (???) において セミコロン (;) および カンマ (,) を使用してはならない.
- 空欄 (???) 以外のコードを変更してはならない.

コード:

#include <stdio.h>

int main(void)
{
    int a, b, c;
    a = ???; 
    printf("a = %d, b = %d, c = %d\n", a, b, c);
    return 0;
}

box
記事: 2002
登録日時: 13年前

Re: 多分、演算子の優先度の問題です…

#2

投稿記事 by box » 2年前

ソースコードの空欄 (???) を埋め, 以下の実行結果を再現しなさい.
「以下の実行結果」はどこに記載があるのでしょうか。

以下独白

コード:

    int a, b, c;
    a = ???; 
    printf("a = %d, b = %d, c = %d\n", a, b, c);
???に何が入るのかよくわからんが、何が入っているかわからないbとcの値を出力することの意味がわからん。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

モノクマ

Re: 多分、演算子の優先度の問題です…

#3

投稿記事 by モノクマ » 2年前

すいません忘れていました^^;

実行結果
a=1,b=2,c=3


です。どなたかお願いします。

朱鷺
記事: 3
登録日時: 6年前
住所: 茨城

Re: 多分、演算子の優先度の問題です…

#4

投稿記事 by 朱鷺 » 2年前

出題意図にあっているのかわかりませんが、

コード:

 a = ( ( b = 2 ) && ( c = 3 ) );
とすれば「a = 1, b = 2, c = 3」の出力にはなりそうです。

参照魚
記事: 109
登録日時: 6年前

Re: 多分、演算子の優先度の問題です…

#5

投稿記事 by 参照魚 » 2年前

コード:

a = ( b = ( c = 3 ) - 1 ) - 1;

モノクマ

Re: 多分、演算子の優先度の問題です…

#6

投稿記事 by モノクマ » 2年前

朱鷺さん、参照魚さんありがとうございました。
返信遅れてすいませんm(_ _)m
なぜかサイトに入れませんでした…
なにか重く感じるのは自分だけですかね^^;

返信

“C言語何でも質問掲示板” へ戻る