助けてください。

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

助けてください。

#1

投稿記事 by はるぽとふ » 7年前

実行時に mと nとを入力し, m行 n列の要素を含む左下から右上がりライン全体にあるすべての要素の合計値を求めるプログラムを作成する.途中からわからなくなりました。

#include <stdio.h>
#define M 3
#define N 4
int main(void) {
int a[M][N]={
{1, 7, 1, 1},
{7, 5, 1, 1},
{4, 0, 5, 2}
};
int m, n, sum, i, j;

printf("int a[M][N]\n");
for(i=0;i<M;i++){
printf("{");
for(j=0;j<N;j++){
printf("%d", a[j]);
}
printf("}\n");
}
printf("m?");
scanf("%d", &m);
printf("n?");
scanf("%d", &n);
sum = 0;
for(i=m;i<M;i++){
for(j=n;j<N;j++){
sum = sum + a[j];
}
}
printf("migiagari(%d,%d)goukei = %d\n",
m, n, sum);

return 0;
}

Math

Re: 助けてください。

#2

投稿記事 by Math » 7年前

やろうとしてることがよくわからないのでコメントをいれてください。

コード:

#define _CRT_SECURE_NO_WARNINGS //scanf等のセキュリティ警告抑制
#include <stdio.h>
#define M 3
#define N 4
int main(void) {
	int a[M][N] = {
		{ 1, 7, 1, 1 },
		{ 7, 5, 1, 1 },
		{ 4, 0, 5, 2 }
	};
	int m, n, sum, i, j;

	printf("int a[M][N]\n");
	for (i = 0;i<M;i++) {
		printf("{");
		for (j = 0;j<N;j++) {
			printf("%d", a[i][j]);
		}
		printf("}\n");
	}//以上a[M][N]を表示
	printf("m?");//ここからなにをしたいのかコメントを書く…
	scanf("%d", &m);
	printf("n?");
	scanf("%d", &n);
	sum = 0;
	for (i = m;i<M;i++) {
		for (j = n;j<N;j++) {
			sum = sum + a[i][j];
		}
	}
	printf("migiagari(%d,%d)goukei = %d\n",
		m, n, sum);

	return 0;
}
いまはこうなる

コード:

int a[M][N]
{1711}
{7511}
{4052}
m?1
n?1
migiagari(1,1)goukei = 14
続行するには何かキーを押してください . . .

Math

Re: 助けてください。

#3

投稿記事 by Math » 7年前

(Windows10、VS2017Community を使用した場合です)

shika

Re: 助けてください。

#4

投稿記事 by shika » 7年前

コード:

/*
* test.c
*/

#define _CRT_SECURE_NO_WARNINGS //scanf等のセキュリティ警告抑制

#include <stdio.h>

#define M 3
#define N 4

int main(void) 
{
	int a[M][N] = 
	{
    { 1, 7, 1, 1 },
		{ 7, 5, 1, 1 },
		{ 4, 0, 5, 2 }
	};

	int m, n, sum, i, j;

	printf("int a[M][N]\n");
	for (i = 0;i<M;i++) 
	{
		printf("{");
		for (j = 0;j<N;j++) 
			printf("%d", a[i][j]);
		printf("}\n");
	}//以上a[M][N]を表示
	printf("m?");//ここからなにをしたいのかコメントを書く…
	scanf("%d", &m);
	printf("n?");
	scanf("%d", &n);
	sum = 0;
	for (i = 0;i<m;i++) 
 		for (j = 0;j<n;j++)
			sum += a[i][j];
   
	printf("migiagari(%d,%d)goukei = %d\n",m, n, sum);

	return 0;
}

返信

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