おまいら!今日からC言語を学んでいくぞー!パート2
■ このスレッドは過去ログ倉庫に格納されています
0885832
2005/11/16(水) 14:18:27はーい、正解乙。でも気になった点があるのでまずは3つ
・i == j になることってないよね
・*(array + i) という式には syntax-sugar(※)があって、array[i]と書くことができる。こう書くことの方が多分多いよ
※意味は同じだけどもっと書きやすい表現。構文糖、糖衣構文、構文糖衣ともいう
# []演算子は本当は *いつでも* そういう意味なんだけど、説明すると長くなるから最初は「配列にも使えるし、配列の要素を指すポインタにも使える」ということで。
・retを使うより。2重ループを抜けた時点で単に1を返した方がすっきりする。
# 出口を一つに(return文は1つしか書かない)、というコンセプトで書きたいなら話は別だけど
さらに。
俺が出した例が悪かったのかもしれんが、テストパターンが1つというのは寂しいんでない?
int n0[] = {1,2,3,4,5,6,1,8};
int n1[] = {1,2,3,4,5,6,7,1};
int n2[] = {1,2,3,8,5,6,7,8};
int n3[] = {1,2,3,4,5,2,7,8};
int n4[] = {1,2,3,4,5,6,7,8,4};
int len = sizeof(n0)/sizeof(n0[0]);
特に境界部分のチェックは重要。
n4は「指定範囲外を調べないか」をチェックするため。
■ このスレッドは過去ログ倉庫に格納されています