C言語なら俺に聞け(入門編)Part 79
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2011/02/15(火) 09:07:06★前スレ
C言語なら俺に聞け(入門編)Part 78
http://hibari.2ch.net/test/read.cgi/tech/1296984829/
★過去スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 146代目
http://hibari.2ch.net/test/read.cgi/tech/1296387672/
★C++言語もOK、ガンガン質問してください。
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
# 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
# サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
0002デフォルトの名無しさん
2011/02/15(火) 10:38:46勝手にテンプレ変えんなクソったれが
C++はスレ違いだ
0003デフォルトの名無しさん
2011/02/15(火) 12:02:31#include <stdio.h>
main()
{
int i,j;
i = 3; j = 4;
i = i+ +j;
printf("%d\n\r",i);
}
とした場合、 + が二つあっても,あいだにスペースやtabなどのセパレータがあれば、
warningもなく、きちんと動作します。
i = i + j;
とした場合と同じになります。
もちろん、
i = i++j;
とした場合はエラーとなります。
10年以上cをいじってて、はじめて気が付きました。
gccの4.3.2でテストしました。gcc以外に組込系の環境がいくつかあるのですが、
どれもも同じ動作でした.。
上記の処理は、言語仕様としてはどのようになっているのでしょうか?
0004デフォルトの名無しさん
2011/02/15(火) 12:11:59トークンに分割する際は最も長いシーケンスを採用することになっています
つまり + よりも ++ の方が長いので、+ がいくつか連続していればそれは ++ というトークンとして切りだされます
トークンに分割した後に、そのプログラムの構文を解釈します
例えば x+++++y は x ++ ++ + y と分割されコンパイルエラーになるという例が仕様書にも記載されています
0005デフォルトの名無しさん
2011/02/15(火) 12:14:52i=i+ +j;
の場合、どう処理されているのかが知りたいんです。
0006デフォルトの名無しさん
2011/02/15(火) 12:22:11+j というのは単項演算子の + が j にくっついたものです
負の値を表すのに -j などと書けるように正の値をわざわざ + を付けて +j などと書いてもよいです
0007デフォルトの名無しさん
2011/02/15(火) 12:30:49加算演算子でなくて、単項演算子となるわけですね。
実際のコードでは、数行にわたる計算式で、+の後ろに関数やらマクロやら
あったので、発見が遅れたので、バグとして計上するかどうかに悩んでたのでした。
コンパイルされたアセンブラコードとしては問題なかったのですが。
ありがとうございました。
0008デフォルトの名無しさん
2011/02/15(火) 18:02:00そんな話は聞いたことないけどしたいならそうすればいいんじゃない?
それより、 i * 10 + 9 + ( i == 9 ) は意図したとおりに動かないね。
920 :デフォルトの名無しさん:2011/02/06(日) 17:34:11
問題ないように思える人はもう一度Cの規格票をよく読むんだ^^
923 :デフォルトの名無しさん:2011/02/06(日) 17:38:32
…というのも不親切なので答えをいうと
i == 9の部分はtrueの時1になることを想定しているけど
(90-100の階級幅だけ11あるので、ここだけ特別処理にしている)
Cの規格上はtrueは0以外の整数であればなんでもいいことになっているので
実装にっては「90-100」のような表示にならない可能性があるってことなのよ^^;
ここは
printf( "%d-%d %d人\n", i * 10, i == 9 ? 100 : i * 10 + 9, cv[ i ] );
のようにすべきでした。
924 :デフォルトの名無しさん:2011/02/06(日) 17:41:11
って、答えを書いているうちに即レスするんじゃない貴様ら^^
ちなみに、この「trueは0以外の整数」というのは
Cではけっこう重要な落とし穴なので初学者は覚えておくといいよ^^
929 :デフォルトの名無しさん:2011/02/06(日) 17:44:46
あれ?そうだっけ?すまんすまん^^ワラ
935 :デフォルトの名無しさん:2011/02/06(日) 17:49:37
こうして人は成長していくのであった^^;
0009デフォルトの名無しさん
2011/02/15(火) 18:05:28>>654
その 6.5.6 って意味がよく判らん記述だなぁ、解りやすく解説できる?
そもオーバーフローとは加算・乗算によって桁あふれを起こす場合だろ
減算によって引き起こされるのはアンダーフローって呼ぶのでは?
0010デフォルトの名無しさん
2011/02/15(火) 18:09:59>>561, >>564
マスターのレベルにもよるよね。
普通に配列使うだけなら、他の言語知ってりゃできて当然。
char *x;
char y
char a[] = "012345678";
*x = a - 1;
y = x[2];
で、x に何が入るかまでわかってるなら結構すごいと思う。
0011デフォルトの名無しさん
2011/02/15(火) 18:23:00printf("%d\n\r",i); // mac から windows の改行コードってネタ?
0012デフォルトの名無しさん
2011/02/15(火) 18:27:24Part77のコピペか
突っ込みも一緒にコピペしないと分かりにくいんじゃね?
0013デフォルトの名無しさん
2011/02/15(火) 18:42:10ひどいじゃなイカもコピペすれ
0014デフォルトの名無しさん
2011/02/15(火) 19:04:11おまえら、おもしろいおもちゃを手にいれたみたいに。ひどいじゃなイカ^^;
0015Perl忍者 ◆M5ZWRnXOj6
2011/02/15(火) 21:05:45俺「2chでC言語なら俺に聞けっていうスレをはじめました あれぼくです」
みたいに おーすげえっていわれるけど
0016デフォルトの名無しさん
2011/02/15(火) 21:08:000017デフォルトの名無しさん
2011/02/15(火) 21:19:070018デフォルトの名無しさん
2011/02/15(火) 21:46:230019デフォルトの名無しさん
2011/02/15(火) 22:16:30250 名前: デフォルトの名無しさん [sage] 投稿日: 2011/02/09(水) 01:01:41
void mem_cpy(void *dst,void *src,u_int size){
char *p1 = *dst;
char *p2 = *src;
while(size--){
*p1** = *p2++;
}
}
基本的なソースはこういう形として,
こういう形で,エンディアンの問題を回避する方法ってある?
*p1** = *p2++;
これ、どんな動作なの?
0020デフォルトの名無しさん
2011/02/15(火) 22:20:490021デフォルトの名無しさん
2011/02/15(火) 22:26:330022デフォルトの名無しさん
2011/02/15(火) 22:34:58うそつかない
0023デフォルトの名無しさん
2011/02/15(火) 22:53:52C言語でないものはスレ違い
0024デフォルトの名無しさん
2011/02/15(火) 23:19:45for(i=0;i<N=100;i++){
for(j=0;j<N=100;j++){
scanf("%d",&matrix[i][j]);
}
}
このような手順で行列を作成した場合例えばi=j=4となる
i行j列の成分を除いた99*99の行列を作成するにはどう記述すべきですか?
0025デフォルトの名無しさん
2011/02/15(火) 23:27:45まず i<N=100 や j<N=100 がコンパイル通らないけど…
それから、i=j=4となるi行j列要素を除くと99*99行列じゃなくて100*100-1行列じゃね?
0026デフォルトの名無しさん
2011/02/15(火) 23:40:280027デフォルトの名無しさん
2011/02/15(火) 23:44:59すいません書き方が酷かった
i=4またはj=4となるような行と列除くという意味です
あと省略しましたがNもscanfで入力させたいです
0028デフォルトの名無しさん
2011/02/15(火) 23:45:51その通り、i=j=4となるi行j列要素を除く100*100-1行列です
0029デフォルトの名無しさん
2011/02/15(火) 23:48:37i=5,j=5のときはmatrix[4][4]?
それともmatrix[5][5]?
0030デフォルトの名無しさん
2011/02/15(火) 23:52:40意味が分からん…
0031デフォルトの名無しさん
2011/02/15(火) 23:53:20003229
2011/02/15(火) 23:56:11for(i=0;i<N=100;i++){ if(i==4) continue;
for(j=0;j<N=100;j++){ if(j==4) continue;
scanf("%d",&matrix[i][j]);
}
}
後者なら何をしたいのか分からないが
for(i=0;i<N=100;i++){
for(j=0;j<N=100;j++){
if(i!=4 && j!=4)
scanf("%d",&matrix[i][j]);
}
}
0033デフォルトの名無しさん
2011/02/15(火) 23:57:39scanfで読み込んだ行列に対して、指定した行と列を除く話だと思うよ
0034Perl忍者 ◆M5ZWRnXOj6
2011/02/15(火) 23:59:23Cのコードが凄くカスにみえんだよね
はぁ・・・どうしよう 嫌味に聞こえたらごめんね
0035Perl忍者 ◆M5ZWRnXOj6
2011/02/16(水) 00:00:35ユーザー多いから^−^;
俺TUEEEEEEEEEEEEEEEEEEEEE!!
できないよね^^; 馬鹿だね君たちも^^;
^−^;
0036デフォルトの名無しさん
2011/02/16(水) 00:05:03100*100-1行列だとしてさ、「除く」って具体的にどういう事?
100*100-1要素の2次元配列を作りたい、それとも100*100要素の2次元配列で
[4][4]には代入しない、のどっち?
0037デフォルトの名無しさん
2011/02/16(水) 00:05:43もっとやれ
0038デフォルトの名無しさん
2011/02/16(水) 00:08:060039デフォルトの名無しさん
2011/02/16(水) 00:08:380040デフォルトの名無しさん
2011/02/16(水) 00:11:590041C忍者 ◆Iw4kwU1lPo
2011/02/16(水) 00:13:030042Python忍者 ◆/vgV4RIG3g
2011/02/16(水) 00:20:260043舐め忍者 ◆gHyRb0WDMU
2011/02/16(水) 00:23:230044PHP忍者 ◆46cuXalB7s
2011/02/16(水) 00:24:490045デフォルトの名無しさん
2011/02/16(水) 00:25:530046デフォルトの名無しさん
2011/02/16(水) 00:27:22,.__y⌒'ー---┐ ,.____ _へ、_、__,.ヘ、___
/ \ , '´ `丶、 r´
} ( 聞 ど l / l _, -―― - ヽ、┌´ ナ丶
f´ ) こ う ヽ n⌒l/ l ,. .´: : : : ハ: : : : :`.ヽ'ヽ ├┬゛ tナ
l ( え も } l |l |n l / : :/ j:/ーヘl: : :|: : : : | }. ノ /
{ ) ん 〉 | { j」_l /:l :/ |:/`}ノ!.:/ { ヽ / /へノ
} ( で { _j /ヘ/: :l ミミ l/} 〈 ノ -‐ァ、、
. ) ! ゲ (: :´メ、_,.メ、|: : | , , ミミ./ :l . }. ┌─┐ (,__
└-、 ソ ,/ ヽ : : : : 丿」: : |、 /`¬ , , |: :| ) ┌┘
ゝ 、_,,,,,,,... -ゝ/ ̄/´,.__.|: : | >-| /_,ノ. : :\__l\ ・
. ,/ / ̄ヽ l!: : :ヽ、l 丶イ |.|ト、:.\: : : : : : : :>-、-、 __,,.、
( ヾ \:_: :\__ ,‐//.| `l:\ ̄ ̄l/
 ̄  ̄ ̄ ̄ヽr―ァ' \: : /、 // }/: : し\
/: :,L,. く ___/::/ \'/ { ヽ┬┐/
/: :/ /: ヾ¬ー'^ヽ ヽ 丶__ _,-、
__/: :/ /: :/ \ {、´ __ _l::::l⌒\
|: : : : / |: : i /:\ ` >'´ \`-´^ヽJ
/: : | ̄ |: : レ /: :// \
0047デフォルトの名無しさん
2011/02/16(水) 00:28:010048デフォルトの名無しさん
2011/02/16(水) 00:28:26宿題スレへ号
0049Perl忍者 ◆M5ZWRnXOj6
2011/02/16(水) 00:30:070050デフォルトの名無しさん
2011/02/16(水) 00:30:22http://hibari.2ch.net/test/read.cgi/tech/1295273862/
あなたが解けないC言語/C++言語の問題を ◆QZaw55cn4c が有償で片付けるスレッドです。
・モリタポ(http://moritapo.jp/)により決済を行います。
・投稿にあたっては、トリップを使ってください。トリップがなければ決済の確認ができません。
◆QZaw55cn4c は、トリップ以外の質問者の情報を知ることができませんので安心です。
【回答掲示までの流れ】
1. 質問者がトリップを使って問題を投稿する。
2. ◆QZaw55cn4c が回答できる問題があれば、◆QZaw55cn4c が受諾レスを行う。
受諾レスには決済日を基点とした回答猶予期間が示される。
3. 質問者が ◆QZaw55cn4c にモリタポを進呈する。
進呈の際には、問題を投稿したときに表示されたトリップ(パスワードではない)をメッセージに記入する。
4. モリタポの進呈を確認したら、◆QZaw55cn4c は回答を掲示する。(http://codepad.org/, http://ideone.com を使用します。)
【料金】
・一問あたり 500円(5000モリタポ・手数料込み)です。
・一つのレスに記述できる内容を一問とします。アップローダーを使用してもかまいません。
・◆QZaw55cn4c が受諾レスを行い、受諾レスに回答期日を示したにも関わらず、回答期日に間に合わなかった場合には、モリタポを返還します。
それ以外の場合にはモリタポの返還はいたしません。
【修正】
・◆QZaw55cn4c が一度示した回答に対しては、明白な錯誤があった場合を除いては、◆QZaw55cn4c は修正は基本的に行いません。
ただし、最大限ご希望に応じたいと考えていますので、修正希望があれば、トリップを使用して投稿してください。
修正希望回数は、最大3回を目安としてください。3回を超えて修正を希望する場合は、新規に質問を投稿しなおしてください。
いずれも場合も、修正に応じることを保障するものではありません。
0051Haskell忍者 ◆Lgxotu9vfE
2011/02/16(水) 00:31:470052デフォルトの名無しさん
2011/02/16(水) 00:33:55複雑なコード見慣れてるからさ
Cのコードが凄くカスにみえんだよね
はぁ・・・どうしよう 嫌味に聞こえたらごめんね
35 :Perl忍者 ◆M5ZWRnXOj6 :2011/02/16(水) 00:00:35
C言語なんて凄いやつたくさんいるしさあ^−^;
ユーザー多いから^−^;
俺TUEEEEEEEEEEEEEEEEEEEEE!!
できないよね^^; 馬鹿だね君たちも^^;
^−^;
0053デフォルトの名無しさん
2011/02/16(水) 01:25:330054デフォルトの名無しさん
2011/02/16(水) 01:40:190055デフォルトの名無しさん
2011/02/16(水) 02:09:100056デフォルトの名無しさん
2011/02/16(水) 02:10:16int main(void)
{
....................int no;
....................printf("整数を入力してください。:"); scanf("%d", &no);
.....................while(no > 0){
....................................if(no % 2){
..........................................................--no;
..........................................................printf("%d ", no);
..........................................................no -= 2;
.........................................................}
.....................................else{
..........................................................printf("%d ", no);
..........................................................no -= 2;
...............................................}
.................................}
...........................return(0);
}
C言語の教本の演習問題で「入力した整数以下の正の偶数を降順に表示しろ」
って言うから思いついたように組み込んで行ったら出来たんだが、
後々、何でこれで間違ってないのか分からん。
偶数入れた時はifのelseが使われて偶数が表示されるのは分かるが、奇数(例えば9)入れた時は
8, 5, 2 が表示されるんじゃないの?
入門一週間目の俺に教えてくれ
0057デフォルトの名無しさん
2011/02/16(水) 02:13:39奇数を入れた1回目のループは
if(no % 2){} の中身が実行されるが
その時noが偶数になるので2回目以降のループは
else{}の中身が実行される
0058デフォルトの名無しさん
2011/02/16(水) 02:17:01ああ、そっか
しょーもない読み違いで長文レスしてしまってすまんなありがとう
0059デフォルトの名無しさん
2011/02/16(水) 02:20:371を入力したときに
正の偶数ではない0が出力されちゃうから
修正した方がいいよ
0060デフォルトの名無しさん
2011/02/16(水) 02:28:220061デフォルトの名無しさん
2011/02/16(水) 02:36:260062デフォルトの名無しさん
2011/02/16(水) 02:38:13whileの複合文の上に
..................if(no == 1){
..................printf(" ");
..................--no;
......................................}
と、whileの複合文の下に
.................putchar(' ');
入れれば良い感じか
0063デフォルトの名無しさん
2011/02/16(水) 02:39:54>>36を見ると単純にそうとは言えないんじゃかいかぺろ
0064デフォルトの名無しさん
2011/02/16(水) 02:41:55http://hibari.2ch.net/test/read.cgi/tech/1295273862/
あなたが解けないC言語/C++言語の問題を ◆QZaw55cn4c が有償で片付けるスレッドです。
・モリタポ(http://moritapo.jp/)により決済を行います。
・投稿にあたっては、トリップを使ってください。トリップがなければ決済の確認ができません。
◆QZaw55cn4c は、トリップ以外の質問者の情報を知ることができませんので安心です。
【回答掲示までの流れ】
1. 質問者がトリップを使って問題を投稿する。
2. ◆QZaw55cn4c が回答できる問題があれば、◆QZaw55cn4c が受諾レスを行う。
受諾レスには決済日を基点とした回答猶予期間が示される。
3. 質問者が ◆QZaw55cn4c にモリタポを進呈する。
進呈の際には、問題を投稿したときに表示されたトリップ(パスワードではない)をメッセージに記入する。
4. モリタポの進呈を確認したら、◆QZaw55cn4c は回答を掲示する。(http://codepad.org/, http://ideone.com を使用します。)
【料金】
・一問あたり 500円(5000モリタポ・手数料込み)です。
・一つのレスに記述できる内容を一問とします。アップローダーを使用してもかまいません。
・◆QZaw55cn4c が受諾レスを行い、受諾レスに回答期日を示したにも関わらず、回答期日に間に合わなかった場合には、モリタポを返還します。
それ以外の場合にはモリタポの返還はいたしません。
【修正】
・◆QZaw55cn4c が一度示した回答に対しては、明白な錯誤があった場合を除いては、◆QZaw55cn4c は修正は基本的に行いません。
ただし、最大限ご希望に応じたいと考えていますので、修正希望があれば、トリップを使用して投稿してください。
修正希望回数は、最大3回を目安としてください。3回を超えて修正を希望する場合は、新規に質問を投稿しなおしてください。
いずれも場合も、修正に応じることを保障するものではありません。
0065デフォルトの名無しさん
2011/02/16(水) 02:42:53って突っ込み待ちか?
0066デフォルトの名無しさん
2011/02/16(水) 02:43:25質問の際は以下の条件に従ってください。
従わない投稿の問題に対しては、回答を差し上げられない可能性が高くなります。
・トリップを使用してください。トリップがない場合、受諾レスも回答も差し上げられません。
・質問は【質問テンプレート】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、内容について説明をつけてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
【質問テンプレート】
[1] 問題文(含コード&リンク):
[2] 環境
[2.1] OS: (Windows/Linux/等々)
[2.2] コンパイラ名とバージョン: (gcc 3.4, VisualC++2010 Express, Borland C++ 5.5 等)
[2.3] 言語: (C/C++/どちらでも可 のいずれか)
[3] 回答希望期限:([yyyy年mm月dd日hh:mm])なお ◆QZaw55cn4c は回答希望期限を最大限尊重しますが、かならずしも希望にそえるとは限りません。
[4] その他の制限: (どこまで習っているか、<****.h>は使ってはいけない等々)
【過去スレ】
【◆QZaw55cn4c 隔離】C/C++の問題を片付けます
http://hibari.2ch.net/test/read.cgi/tech/1289715349/
【関連スレ】
C/C++の宿題片付けます 145代目
http://hibari.2ch.net/test/read.cgi/tech/1294061094/
0067デフォルトの名無しさん
2011/02/16(水) 03:09:210068デフォルトの名無しさん
2011/02/16(水) 03:39:08唸れ、俺の左手――!
宿りし力を今こそ解き放つ――!!
0069デフォルトの名無しさん
2011/02/16(水) 04:22:460070デフォルトの名無しさん
2011/02/16(水) 04:46:110071デフォルトの名無しさん
2011/02/16(水) 06:00:520072デフォルトの名無しさん
2011/02/16(水) 09:00:48コンパイルはvisual studio 2008 Expressでやってます。
先にvarargs.hをincludeして、
va_start(引数)の形でコンパイルを通したいんですが、
va_start(引数1,引数2)が先に読まれてしまいエラーになってしまって・・・。
0073デフォルトの名無しさん
2011/02/16(水) 09:39:090074デフォルトの名無しさん
2011/02/16(水) 09:51:27理屈の上では、
#include <varargs.h>
va_start(引数)
#undef va_start
#include <stdarg.h>
va_start(引数1,引数2)
で少なくともコンパイルは通りそうな気がするけど
0075デフォルトの名無しさん
2011/02/16(水) 09:56:24>>74 釣られる
ぺろぺろの予感!!!
0076デフォルトの名無しさん
2011/02/16(水) 10:30:16僕も先ほどそれでエラーは回避できました。
#include <stdarg.h>
#undef va_start
#include <varargs.h>
va_start(引数)
実際はこーゆー流れでしたが。
これでやろうと思ってるんですが、
Visual studio 6.0と2008ではvarargs.hが変わってますよね?
2008はva_argが定義されてるかどうかが聞かれてるようになってますが。
なにか理由があって変わったってことは、
安易にそのようにすると6.0と挙動が変わってくるのかな。。。
とか不安なんですが、何かわからないでしょうか?
0077デフォルトの名無しさん
2011/02/16(水) 10:48:36そのあたりの挙動を吸収してくれるのがstdな訳です
俺は規格外だ、アドホックに行くぜ
というならその理由を明確に提示してもらわないと
回答しようがないですし
そもそもそれが明確ならここより適したスレがあると思います
0078デフォルトの名無しさん
2011/02/16(水) 10:59:066.0では
#include <stdarg.h>
#include <varargs.h>
va_start(引数)
の流れでやってたのを2008に移行したいがための質問でした。
stdarg.hをincludeした後にva_argをundefした時に
著しく挙動が変わるような事がなければ問題ないです。
実際にログにはva_startとva_endしか再定義されないみたいで、
個人的には大丈夫かなとは思ってるんですが。
>俺は規格外だ、アドホックに行くぜ
そこらへんは良くわかってないです・・・。
すいません。。。
丁寧に答えていただきありがとうございました。
0079デフォルトの名無しさん
2011/02/16(水) 11:01:570080デフォルトの名無しさん
2011/02/16(水) 11:45:29メリットというか・・・。
現行がそーゆー記述
(とゆーか、varargs.hで定義している形)になってたんで。
としか言えないです。
ソースは極力触りたくないんで。
0081デフォルトの名無しさん
2011/02/16(水) 11:45:51実際にディスクに書き込むようですが、
そのバッファのサイズはどこで定義されていますか?
また変更することはできるのでしょうか
ちなみにコンパイラはgcc 4.3.2です
0082デフォルトの名無しさん
2011/02/16(水) 12:07:47setvbufで変更できます
0083デフォルトの名無しさん
2011/02/16(水) 15:23:38#define NUM 5
int main(void)
{
int test[NUM];
int tmp;
int i,j,s,t;
printf("%d人の点数を入力してください。\n",NUM);
for(i=0;i<NUM;i++){
scanf("%d",&test[i]);
}
for(s=0;s<NUM-1;s++){
for(t=s+1;t<NUM;t++){
if(test[t]>test[s]){
tmp=test[t];
test[t]=test[s];
test[s]=tmp;
}}}
for(j=0;j<NUM;j++){
printf("%d番目の人の点数は%dです。\n",j+1,test[j]);
}
return 0;
}
配列の要素を大きい順にソートするコード?らしいんですが意味がわかりません
どうして大きい順にちゃんと並び変わるんですか教えてください;;
0084デフォルトの名無しさん
2011/02/16(水) 15:29:03if 文のところ
test[t] が test[s] よりも大きい場合に test[t] と test[s] を入れ替えて大きい順に並び変えている
0085デフォルトの名無しさん
2011/02/16(水) 15:36:44>がありますしそれは分かるんですが
tmp=test[t];
test[t]=test[s];
test[s]=tmp;
のところがよく分からないんです・・・
22,80,57,60,50 5人の点数はこれです
0086デフォルトの名無しさん
2011/02/16(水) 15:40:350087デフォルトの名無しさん
2011/02/16(水) 16:00:400088デフォルトの名無しさん
2011/02/16(水) 16:13:01それは test[t] と test[s] を入れ替えている
最初 test[t] が 80 で test[s] が 22 だったとすると
tmp = test[t]; // tmp に 80 を代入
test[t] = test[s]; // test[t] に 22 を代入
test[s] = tmp; // test[s] に 80 を代入
最後 test[t] が 22 で test[s] が 80 となり入れ替わっている
0089デフォルトの名無しさん
2011/02/16(水) 18:08:080090デフォルトの名無しさん
2011/02/16(水) 18:16:200091デフォルトの名無しさん
2011/02/16(水) 18:20:000092デフォルトの名無しさん
2011/02/16(水) 18:21:430093デフォルトの名無しさん
2011/02/16(水) 19:27:01はい次
0094デフォルトの名無しさん
2011/02/16(水) 19:52:030095デフォルトの名無しさん
2011/02/16(水) 19:54:230096デフォルトの名無しさん
2011/02/16(水) 19:59:510097デフォルトの名無しさん
2011/02/16(水) 20:27:12BUFSIZ @stdio.h
0098デフォルトの名無しさん
2011/02/16(水) 22:00:310099Perl忍者 ◆M5ZWRnXOj6
2011/02/16(水) 22:00:420100デフォルトの名無しさん
2011/02/16(水) 22:03:48いけないでござるよ。
0101デフォルトの名無しさん
2011/02/16(水) 22:15:26書いていいとして、何を書くつもりだ?
■ このスレッドは過去ログ倉庫に格納されています