プロが教えるわが家の防犯対策術!

 整数を1つ読み込み、それを倍々しながら10回書き出すプログラムを作成しています例えば、実行結果に3と入力すると、3、6、12、24、48、96、192・・・と書き出すものです。 
for文かwhile文を使うことを指定されているんですが、どちらを使ったら良いでしょうか? for(A;B;C)のCの部分には、実行する式が入るんですよね? ただ、入れてはいけないものはありますか? 今まで、a++、a--しか見たことがないので、実行する式を入れてもエラーがでてしまいます。

A 回答 (14件中11~14件)

毎度おなじみのzwiです。


「エラーが出ます」だけだと情報が不十分ですので、出ているエラーを正確に報告してくださいね。画面に出ている情報を出来るだけ詳しくお願いします。

ちょっとアドバイス。
いきなりプログラム全体を作るより、例えばscanfだけを実験するプログラムを作って動作を確認してから疑問があれば質問するようにしたほうが良いですよ。このままだと自力でなかなか先に進めない、新しい機能ごとに行き詰ってしまいます。
せっかくすぐ試せる環境があるのですから、使わないのは勿体無いです。
本で調べる→その機能を徹底的に試してみる→本で再確認→疑問が残ればここで質問。
    • good
    • 0

サンプルコードです。



#include <stdio.h>

int main(void)
{
  int a, n = 10;
  
  printf("aを入力 > ");
  scanf("%d", &a);
  while (n--) {
    printf("%d ", a);
    a *= 2;
  }
  return 0;
}

(注)インデントのため、全角空白を使っています。

この回答への補足

このコードで実行した結果、エラーがでてしまいます。

補足日時:2007/08/11 19:35
    • good
    • 0
この回答へのお礼

参考になりました。ありがとうございます。

お礼日時:2007/08/19 20:50

> どちらを使ったら良いでしょうか?



どちらでも、お好きな方をお使いください。
ちなみに、

for (A; B; C) {
  // 何かの処理
}


A;
while (B) {
  // 何かの処理
  C;
}


上記の for / while の内容は、「何かの処理」に
continue; を含んでいない場合、等価です。


> 実行する式を入れてもエラーがでてしまいます。

どんな式を書いたとき、どんなエラーが出ますか?

この回答への補足

 実行結果に3と入力すると、3、6、12、24、48、96、192・・・と書き出すものを作るので、scanfが必要になってきますよね。その実行結果に入力する値はfor文の後の処理(式)に当てはまるんですか? a++を10回実行するのは分かります。 ききたいのは、forの後の処理の式です。  

補足日時:2007/08/11 17:21
    • good
    • 0

10回繰り返すんだったら


for (i = 0; i < 10; i++)
ですね。あとは分かりますね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A