質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

解決済

3回答

471閲覧

入力した整数の平均値を出力したい

Coding_Novice

総合スコア11

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

1グッド

1クリップ

投稿2020/03/17 04:41

正の整数を10個入力して、その平均値を出力するためのコードを書いたのですが、適切な出力がされません。不適切な箇所を指摘していただければ嬉しいです。

下記が実際に作成したコードです。

#include <stdio.h> #include <stdlib.h> #include <string.h> int getAverage(int data[10]); int main(void){ printf("正の整数を10個入力してください。:"); int average, array1[10]; scanf("%d, %d, %d, %d, %d, %d, %d, %d, %d, %d",&array1[0], &array1[1], &array1[2], &array1[3], &array1[4], &array1[5], &array1[6], &array1[7], &array1[8], &array1[9]); average = getAverage(array1); printf("入力された10個の整数の平均値は %d です。\n", average); return 0; } int getAverage(int data[10]){ int i, average = 0; for (i = 0; i < 10; i++) { average += data[i]; } return average/10; }

このコードを実行した結果がこちらになります。
![イメージ説明

DrqYuto👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

scanfの"%d, %d, %d, %d, %d, %d, %d, %d, %d, %d"
が原因ですね。
','を入れているのでコンマも入れて入力しないといけない状態になっています。
入力時に2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 と入力するか、
scanfの""のところのコンマを消せばうまくいきます。

投稿2020/03/17 04:55

Shion-Serizawa

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Coding_Novice

2020/03/17 05:06

回答ありがとうございます!解決することができました!
guest

0

scanfの書式が"%d, %d, %d, %d, %d, %d, %d, %d, %d, %d"なので、この通り, で数値を区切って入力する必要があります。

投稿2020/03/17 04:50

maisumakun

総合スコア145121

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Coding_Novice

2020/03/17 05:05

回答ありがとうございます!解決することができました!
guest

0

ベストアンサー

入力する時、scanfの書式指定の通り、カンマで区切ってください。

scanfの返り値は必ず確認しましょう。返り値が10で正常です。
お書きの入力だと返り値が1で、array1[0]にのみ入力した値が入り、array1[1]以降はゴミが入っています。

投稿2020/03/17 04:49

編集2020/03/17 04:51
otn

総合スコア84423

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Coding_Novice

2020/03/17 05:05

回答ありがとうございます!解決することができました!あまりに初歩的なミスでした!
otn

2020/03/17 05:13

「自分が初歩的なミスをしがちな人間である」という自覚を持つとミスが減ると思います。
Coding_Novice

2020/03/17 05:20

「どこでミスを犯しがちなのか」というポイントが今回の指摘で明確になりましたので、非常に助かりました。初歩的なミスをしがちという自覚を持ちつつこれからも頑張ります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問