急ぎです…。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
あみあみ

急ぎです…。

#1

投稿記事 by あみあみ » 7年前

要素数100程度の2つのint型配列a,bを宣言し、入力データ件数n、をキー入力し、n件の整数値データを入力し、入力データ値であれば配列aに偶数であれば配列bに格納し、それぞれの格納件数、合計をモニタ入力に表示するプログラム。

ソースコードを書いてみたのですが、実行できずいまいちどこが間違っているのかがわからないです…。

#include <stdio.h>

int main(void)
{
double a[100], b[100],odds_k,evens_j;
int n,i,j,k,odds,evens,date;

printf("input n => ");
scanf("%d", &n);

odds_k=evens_j = 0;
k = j = 0;
odds = evens = 0;
i = 0;
a[k] = b[j] = 0;

for (i = 0;i < n;i++);
{
printf("input date => ");
scanf("%d", &date);

if ((date % 2) == 1)
{
date = a[k];
k = k + 1;
odds = odds + date;
}
else
{
date = b[j];
j = j + 1;
odds = odds + date;
}

}

printf("\n奇数 合計=%.3f\n", odds_k);
printf("件数=%.3f\n", k);
printf("\n偶数 合計=%.3f\n", evens_j);
printf("偶数 合計=%.3f\n",j);




return 0;
}

box
記事: 2002
登録日時: 13年前

Re: 急ぎです…。

#2

投稿記事 by box » 7年前

全部見たわけではありませんが…
あみあみ さんが書きました:要素数100程度の2つのint型配列a,b
って書いてあるのに、どうして
あみあみ さんが書きました:

コード:

	double a[100], b[100]
こうなっちゃうんですか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

梅衣堂ひよ
記事: 24
登録日時: 7年前

Re: 急ぎです…。

#3

投稿記事 by 梅衣堂ひよ » 7年前

あみあみ さんが書きました:入力データ値であれば配列aに偶数であれば配列bに格納
入力データ値が奇数であれば配列a、偶数であれば配列bに格納ですかね?
あみあみ さんが書きました:

コード:

	printf("\n奇数 合計=%.3f\n", odds_k);
	printf("件数=%.3f\n", k);
	printf("\n偶数 合計=%.3f\n", evens_j);
	printf("偶数 合計=%.3f\n",j);
4つ目は偶数合計ではなく件数ですね。
それとodds_kとevens_jは最初の方で0を代入したきりで使用していません。
あみあみ さんが書きました:

コード:

	printf("input date => ");
	scanf("%d", &date);
	if ((date % 2) == 1)
	{
		date = a[k];
		k = k + 1;
		odds = odds + date;
	}
	else
	{
		date = b[j];
		j = j + 1;
		odds = odds + date;
	}
折角入力したdateに対して、配列の中身を代入してしまっています。

それと、コードを上げるときはcodeタグで囲んでくださいね。見やすくなりますので(投稿ページのバーの3段目、左から2番目にあります)

追記

コード:

		date = b[j];
		j = j + 1;
		odds = odds + date;
よく見てたら偶数であるbの処理でもodds使っていますね。

コード:

	printf("input date => ");
	scanf("%d", &date);
それとdate(日付)になってますが、dataの間違いですかね?

コード:

for (i = 0;i < n;i++);
for文が直後の;(セミコロン)で終了させられています。
これでは下のデータ入力の箇所はfor文の外の扱いになって1度しか処理されません。
結構説明が下手ですのでご了承ください。割と言葉が足りなかったり文字だらけで分かりにくかったりします。

返信

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