初心者質問です

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

初心者質問です

#1

投稿記事 by まさた » 8年前

下のコードで、九九の計算結果を表示させたいのですが、
結果が9×9ではなく10×10になります。理由を教えていただけませんか。

コード:

#include <stdio.h>
#define MAX1 10
#define MAX2 10

int main()
{
	int i, j;
	int kuku[MAX1][MAX2];

	for (i = 0;i < MAX1; i++)
		for (j = 0;j < MAX2; j++)
			printf("%d",kuku[i][j] = (i + 1)*(j + 1));
			
	return 0;
}

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

Re: 初心者質問です

#2

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

まさた さんが書きました:結果が9×9ではなく10×10になります。理由を教えていただけませんか。
0以上10未満、すなわち0~9の範囲でループし、1を足した値を計算に使用しているので、1~10の数が計算に使用されることになります。

オフトピック
現在、掲示板の時計がずれているようです。この記事は2017/06/17 20:03に投稿しました。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

まさた

Re: 初心者質問です

#3

投稿記事 by まさた » 8年前

ご返答ありがとうございました。

#define MAX1 9
#define MAX2 9
で解決しました。

超初級者
記事: 56
登録日時: 10年前

Re: 初心者質問です

#4

投稿記事 by 超初級者 » 8年前

何でわざわざこねくりまわすのかな?
1から9までループさせて、i * j を出力する方が
よっぽど楽なのに…。

かずま

Re: 初心者質問です

#5

投稿記事 by かずま » 8年前

まさた さんが書きました: #define MAX1 9
#define MAX2 9
で解決しました。
実行結果

コード:

1234567892468101214161836912151821242748121620242832365101520253035404561218243036424854714212835424956638162432404856647291827364554637281
本当に解決ですか?

返信

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