トップページ > プログラム > 2014年04月18日 > gJOgk5DL

書き込み順位&時間帯一覧

2 位/145 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000011417



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
スレ立てるまでもない質問はここで 135匹目

書き込みレス一覧

スレ立てるまでもない質問はここで 135匹目
361 :デフォルトの名無しさん[]:2014/04/18(金) 20:52:58.78 ID:gJOgk5DL
C言語の質問です
while (array[i - 1] != -1);
の意味がよくわかりません-1を入力すると偽になるのですがどういう計算ですか?
よろしくお願いします

苦しんで覚えるC言語
練習問題15 第7項:プログラム書取(解答例)

忍法帳のレベルが低いためリンクは貼れなかった
スレ立てるまでもない質問はここで 135匹目
363 :デフォルトの名無しさん[]:2014/04/18(金) 21:26:57.71 ID:gJOgk5DL
何故そのまんまiではなくi - 1が必要なのかそこが疑問点
スレ立てるまでもない質問はここで 135匹目
368 :デフォルトの名無しさん[]:2014/04/18(金) 22:29:20.73 ID:gJOgk5DL
チクショーーーーーーーーーー!!!
理解できねえええええ

int main(void)
{
int i = 0,array[10],max,min;

do {
printf("%d 番目の数:",i + 1);
scanf("%d",&array[i]);
i++;
} while (array[i - 1] != -1);
スレ立てるまでもない質問はここで 135匹目
369 :デフォルトの名無しさん[]:2014/04/18(金) 22:32:52.06 ID:gJOgk5DL
下段ではこう処理しているから-1が入力されるまでの数値を判断に使っていることはわかる
void maxmin(int array[],int *max,int *min)
{
int i = 0;

*max = 0;
*min = 100;

while (array[i] != -1)
スレ立てるまでもない質問はここで 135匹目
371 :デフォルトの名無しさん[]:2014/04/18(金) 22:49:33.09 ID:gJOgk5DL
>>370 ありがとうございました

これをwhile (array[i] != -1); にした場合-1を入力しても終わらず
延々とscanf("%d",&array[i]); が繰り返されるのですが

何故ですか
僕の解釈では-1の入力をした配列も利用してdo while文を終わらせてくれる気が
したのですが
スレ立てるまでもない質問はここで 135匹目
372 :デフォルトの名無しさん[sage]:2014/04/18(金) 22:54:46.23 ID:gJOgk5DL
自己解決しました

>>do〜while文は、繰り返す文の実行後に条件式を判定します。

らしいのでループされてからの判定される条件式では上のようになると判断しました
スレ立てるまでもない質問はここで 135匹目
378 :デフォルトの名無しさん[]:2014/04/18(金) 23:55:56.35 ID:gJOgk5DL
>>376
何が駄目か論理的に言わなきゃただのボヤキなんだけどなぁ

俺は初心者だからよく解らんが何が駄目なんだ


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。