
No.1ベストアンサー
- 回答日時:
間違いは2箇所あります。
まず、これだとA, B を初期化する時に不明な k が使われてしまいます。
次に、for 文のループ範囲が示されていません。これでは
A=k*k+19;
だけが更新されることになってしまいます。
A と B は、判定式の中で毎回更新した方がいいので、
#include <stdio.h>
#define A(x) ((x)*(x)+19)
#define B(x) ((x)*1000)
int main()
{
int k;
for( k=0; A(k)<B(k); k++ );
printf( "%d¥n", k );
return( 0 );
}
のように、マクロ定義してしまった方が可読性がよくなると思います。
No.2
- 回答日時:
>for(k=0;B<A;k++)
>;
>printf("%d",k);
>とすると出力が何もされませんでした何故ですか?
forループの中で終了条件ご永遠に満たされないので、『なにもしない』という処理を続けるからです。
for文の前に書いた
>A=k*k+19;
>B=1000*k;
という式をfor文の中で処理する。
といことを期待しているのでしょうが、C言語での記述では『あとで処理する式』ではなく『そこで実行される代入式』です。
# だから、コンパイル時にkが未初期化だ。というような警告がでる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
配列を関数に渡す方法
-
配列を使って魔方陣
-
C言語 マスターマインドゲーム...
-
getcの改行判定
-
scanfが実行されません
-
初心者です。for文、if文を使っ...
-
scanf関数を用いての加減乗除%...
-
#if 1 #elseの意味について
-
C言語 入力した数値の平均値の...
-
「Aに対するBの割合」と「Aに対...
-
Aの値からBの値を除するとは??
-
20'(角度)の計算がわかりま...
-
Enterキーを押されたら次の処理...
-
iconv_open失敗
-
エラー 添字が付けられた値が、...
-
信頼区間の1.96や1.65ってどこ...
-
「指定されたキャストは有効で...
-
有効数字について 以前質問をし...
-
EXCELの分散分析表のP-値が....
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
#if 1 #elseの意味について
-
構文エラー";"が型の前にあり...
-
for文の中にswitch文はいれられ...
-
配列を使って魔方陣
-
配列を関数に渡す方法
-
プログラム
-
C言語 マスターマインドゲーム...
-
プログラミングで二番目に大き...
-
初心者です。for文、if文を使っ...
-
scanfが実行されません
-
C言語 数字以外を入力させない...
-
C言語プログラムが理解できなくて…
-
C言語の二分法のプログラムにつ...
-
C言語階乗の総和を求める
-
C言語のwhileループについて
-
for文を使用して値を代入したい...
-
while文を使った問題なのですが...
-
for文の条件式について
-
直角三角形を表示するプログラム
-
C言語 エラー表示 break の位...
おすすめ情報
画像が見にくいのでかきます
すいません
#inclued <stdio.h>
int main()
{
int A,B,k;
A=k*k+19;
B=1000*k;
for(k=0;B<A;k++)
A=k*k+19;
B=1000k;
printf("%d",k);
return 0 ;
}
kに1からずっと代入していって解を求めるほうほうが知りたいです。
(もっと効率的な方法もあると思いますが)
#inclued <stdio.h>
int main()
{
int A,B,k;
A=k*k+19;
B=1000*k;
for(k=0;B<A;k++)
;
printf("%d",k);
return 0 ;
}
とすると出力が何もされませんでした何故ですか?