読者です 読者をやめる 読者になる 読者になる

技術士の技事録

情報工学部門の技術士が、IT技術動向、資格対策等を、勝手気ままに語ります。

技術士第二次試験必須科目 平成26年度 Ⅰ-8

技術士試験 二次試験 必須科目

問題

次のC言語のコードは,配列dataを検索する関数searchのプログラムである。配列dataのサイズは2以上の値のlengthで,data[1]〜data[length-1]には,いろいろな整数値が入っている。ある整数xを与えられると,配列dataの中でxと等しい値が入っている最大の位置(添え字)を返す関数searchとして適切なものにするには,[***(a)***]の部分にどのようなコードを与えるとよいか。ただし,整数xと等しい値が配列dataに含まれていなければ,0を返す。

int search(int data[], int x, int length){
 [***(a)***]
 while(data[i] !=x)
  i--;
 return i;
}

選択肢

int i=length;
int i=length; data[length]=x;
int i=length-1;
int i=length-1; data[0]=x;
int i=length-1; data[length]=x;

 

答え

 ④

解説

 

次の問題へ必須科目TOPへ技術士TOPへ