ループと入力 - 複数の数値の合計

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
大熊
記事: 15
登録日時: 3週間前

ループと入力 - 複数の数値の合計

#1

投稿記事 by 大熊 » 3週間前

プログラミングでわからないところがあります。c言語です。forの後に何を入れればよろしいでしょうか。お教えください。
int i=0; i<5 ;i++と推測いたしましたが違いました。勉強を始めて4日目です。お手柔らかにお願いします

コード:

#include <stdio.h>
// ----------------------------------------
// [ループと入力 - 複数の数値の合計1]
// ----------------------------------------
// 5つの数値が改行区切りで入力されるので
// それらの合計を出力してください

int main(void) {
int ans = 0;
for (/*初期化*/; /*条件*/; /*増減*/) {
int value;
fgets(buf, sizeof(buf), stdin);
sscanf(buf, "%d", &value);
ans = ans + value;
}

printf("%d\n", ans);
}

大熊
記事: 15
登録日時: 3週間前

Re: ループと入力 - 複数の数値の合計

#2

投稿記事 by 大熊 » 3週間前

for (/*初期化*/; /*条件*/; /*増減*/)の中をお教えください。

box
記事: 1787
登録日時: 10年前

Re: ループと入力 - 複数の数値の合計

#3

投稿記事 by box » 3週間前

int i=0; i<5 ;i++と推測いたしましたが違いました。
何を根拠にそう判断したのか示してください。
コンパイルしたときにエラーが出たんですか?であれば、
そのエラーメッセージを「一字一句正確に」載せてください。
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

アバター
みけCAT
記事: 6436
登録日時: 10年前
住所: 千葉県
連絡を取る:

Re: ループと入力 - 複数の数値の合計

#4

投稿記事 by みけCAT » 3週間前

bufが使用されていますが、宣言がまだ書かれていないようですね。
例えば

コード:

for (char buf[1024], cnt[5], *p = cnt; p < cnt + 5; p++) {
とするといいでしょう。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
みけCAT
記事: 6436
登録日時: 10年前
住所: 千葉県
連絡を取る:

Re: ループと入力 - 複数の数値の合計

#5

投稿記事 by みけCAT » 3週間前

よく考えたら、わざわざ別にcntを用意する必要は無かったです。

コード:

for (char buf[1024], *p = buf; p < buf + 5; p++) {
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
みけCAT
記事: 6436
登録日時: 10年前
住所: 千葉県
連絡を取る:

Re: ループと入力 - 複数の数値の合計

#6

投稿記事 by みけCAT » 3週間前

連続でごめんなさい。
5回ならわざわざポインタにする必要も無いですね。

コード:

for (char buf[1024], i = 0; i < 5; i++) {
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

返信

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