読み込んだ値の配列を逆に並べ替える
読み込んだ値の配列を逆に並べ替える
読み込んだ値の配列を逆順に並べ替えるという問題です。
配列の要素数は8とします。
プログラムを書いてみたのですが逆順に並べ替えられず
1つずつ数がずれてしまいます。
どうしてでしょうか?
あと scanf関数を利用したプログラムにデバッカを使おうとするとうまく機能しない
というか、for文の中にscanf関数があると使えません(´・ω・`)
配列の要素数は8とします。
プログラムを書いてみたのですが逆順に並べ替えられず
1つずつ数がずれてしまいます。
どうしてでしょうか?
あと scanf関数を利用したプログラムにデバッカを使おうとするとうまく機能しない
というか、for文の中にscanf関数があると使えません(´・ω・`)
Re: 読み込んだ値の配列を逆に並べ替える
i==4のとき、8-i==4です。
のかわりにとし、
8-iではなく8-i-1としてください。
図や表を書くとわかりやすいです。
8-iではなく8-i-1としてください。
図や表を書くとわかりやすいです。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 読み込んだ値の配列を逆に並べ替える
ちょっとした例です。
#include <stdio.h>
#define N (8)
int main(void)
{
int arr[N], i;
for (i = 0; i < N; i++) {
printf("[%d]=", i), scanf("%d", &arr[i]);
}
for (i = 0; i < N/2; i++) {
int t = arr[i];
arr[i] = arr[N-1-i];
arr[N-1-i] = t;
}
for (i = 0; i < N; i++) {
printf("%d ", arr[i]);
}
putchar('\n');
return 0;
}
Re: 読み込んだ値の配列を逆に並べ替える
要素数が8ならば、
[0]と[7]を入れ替える。
[1]と[6]を入れ替える。
[2]と[5]を入れ替える。
[3]と[4]を入れ替える。
おしまい。
[0]と[7]を入れ替える。
[1]と[6]を入れ替える。
[2]と[5]を入れ替える。
[3]と[4]を入れ替える。
おしまい。
Re: 読み込んだ値の配列を逆に並べ替える
みけCATさん、初級者さん、ありがとうございます(`・ω・´)
初級者さん#defineとはどういう意味でしょうか?
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 13年前
- 住所: 東海地方
- 連絡を取る:
Re: 読み込んだ値の配列を逆に並べ替える
前にも同じ様な間違いをしてませんか?
8-i-1とか前に似た感じのに見覚え有りませんでしょうか。
急いで進むだけでなく、前のもちゃんと復讐しましょう。
「C言語初心者のくだらない質問1」や「C言語初心者のくだらない質問2」とか問題は、今答えを見ずに書けますか?
8-i-1とか前に似た感じのに見覚え有りませんでしょうか。
急いで進むだけでなく、前のもちゃんと復讐しましょう。
「C言語初心者のくだらない質問1」や「C言語初心者のくだらない質問2」とか問題は、今答えを見ずに書けますか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 読み込んだ値の配列を逆に並べ替える
やってみます。
自分が過去立てたトピック一欄が乗ってるページとかってあるんですか?
自分が過去立てたトピック一欄が乗ってるページとかってあるんですか?
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 13年前
- 住所: 東海地方
- 連絡を取る:
Re: 読み込んだ値の配列を逆に並べ替える
下の検索でご自分の名前を入れれば検索出来ますよ。
というか答えを見ないなら、問題は持っているのではないでしょうか?
というか答えを見ないなら、問題は持っているのではないでしょうか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 読み込んだ値の配列を逆に並べ替える
わかりました。
いや自分でわかんないことどんどん聞いてるんで
どの問題だしたかはあんま覚えてません。
答え見ないでやってるんで大丈夫です。
いや自分でわかんないことどんどん聞いてるんで
どの問題だしたかはあんま覚えてません。
答え見ないでやってるんで大丈夫です。
Re: 読み込んだ値の配列を逆に並べ替える
厳しい言い方になると思いますが、
「わからないから聞く」ではなく「覚えるために聞く」ようにしましょう。
覚えるようにすればサクサクプログラムが書けるようになりますので、今よりももっと楽しくできますよ。
がんばって!
「わからないから聞く」ではなく「覚えるために聞く」ようにしましょう。
覚えるようにすればサクサクプログラムが書けるようになりますので、今よりももっと楽しくできますよ。
がんばって!
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 13年前
- 住所: 東海地方
- 連絡を取る:
Re: 読み込んだ値の配列を逆に並べ替える
その後はいかがでしょうか。まるくま さんが書きました:わかってます。覚えなければ聞く意味ないですから
復習は出来ましたでしょうか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。