棒グラフを出力する方法について

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

棒グラフを出力する方法について

#1

投稿記事 by kbbb » 6年前

C言語初心者です。
標準入力からもらった整数を縦棒グラフで出力させたいのですが、
整数を入力するところがうまくいきません。


お知恵をお貸しください。

コード:

#include<stdio.h>
#define MM 100

int main(void)
{
	int i, j, d[MM], d2[MM][MM];

	printf("入力された整数を縦の棒グラフに変換します。\n");
	printf("※1から100までの数字を100回まで入力することができます。\n");
	printf("整数を入力してください : \n");
	scanf_s("%d", MM);

	for (i = 0; i<MM; i++)
	for (j = 0; j<MM; j++)d2[i][j] = 0;

	for (i = 0; i<MM; i++)
	for (j = 0; j<d[i]; j++)d2[j][i] = 1;

	for (i = MM - 1; i>-1; i--){
		for (j = 0; j<MM; j++){
			if (d2[i][j] == 1)printf("*");
			else printf(" ");
		}
		printf("\n");
	}

	return 0;
}

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

Re: 棒グラフを出力する方法について

#2

投稿記事 by みけCAT » 6年前

kbbb さんが書きました:整数を入力するところがうまくいきません。
どういう動作が目標で、現状はどうなってしまいますか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

kbbb

Re: 棒グラフを出力する方法について

#3

投稿記事 by kbbb » 6年前

整数を入力するのですが、2つ目を入力すると動作を停止してしまいます。
目標は、適当な整数をいくつか入力して、それをグラフで表すようにしたいです。

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

Re: 棒グラフを出力する方法について

#4

投稿記事 by みけCAT » 6年前

kbbb さんが書きました:

コード:

scanf_s("%d", MM);
ポインタを渡すべき場所にMM、すなわち100を渡しています。
1つ目を入力しても動作を停止しないのが不思議ですね。
本当はどの変数に値を読み込みたいのですか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

初級者
記事: 200
登録日時: 9年前

Re: 棒グラフを出力する方法について

#5

投稿記事 by 初級者 » 6年前

scanfで値を得ようとしている
MM
が、「変数になっていない」
というのは、ひじょうに
まずいと思います。

閉鎖

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