中間試験模擬問題 |
●問題1:test.cというソースプログラムをコンパイルするコマンドを書け。
■計5点
●問題2:問題2で作成したプログラムを実行するコマンドを書け。
■計5点
●問題3:以下の(1)〜(5)はプログラムの一部である。(1)〜(10)を実行した場合,そ
れぞれ変数
xとyの値はどのような値になるか書け。なお,整数値には小数点は付けてはならない。
また,浮動小数
点型(実数型)の値には,必ず小数点を含めて書くこと。
■各2点計20点
(1)
int x = 0;
x = 8 - 5 * 3 / 2;
(2)
int x = 0;
x = 8 - 5 * 3. / 2;
(3)
double y = 0.0;
y = 8 - 5 * 3 / 2;
(4)
double y = 0.0;
y = 8 - 5 * 3. / 2;
(5)
int x = 0;
x = 3 * 4 / 5;
(6)
int x = 0;
x = 3 * 4 / 5.0;
(7)
double y = 0.0;
y = 3 * 4 / 5;
(8)
double y = 0.0;
y = 3 * 4 / 5.0;
(9)
int x = 15;
x++;
(10)
double y = 10.5;
--y;
★答え:
(解説)
(1)
x:1
(2)
x:0
(3)
y:1.0 または 1.
(4)
y:0.5 または .5
(5)
x:2
(6)
x:2
(7)
y:2.0 または 2.
(8)
y:2.4
(9)
x:16
(10)
y:9.5
●問題4:以下は,int型変数xとdouble型変数yにキーボードから値を入れて表示する
プログラムである。
【a】〜【e】に当てはまる適切な内容を書け。
■各3点計15点
【a】
int main( void ) {
【b】
printf("整数を入力 : ");
scanf(【c】);
printf("浮動小数点数を入力 : ");
scanf(【d】);
printf(【e】); /* ここで,xとyの値を一緒に表示する */
return 0;
}
★答え:
【a】は #include <stdio.h>
【b】は int x; double y; またはそれと同意の内容
【c】"%d", &x
【d】"%lf", &y
※【c】と【d】の内容は入れ替わってもよい
【e】次のいずれかと同意の内容。
"%d, %f", x, y
"%d, %g", x, y
"%d, %e", x, y
●問題5:以下の(1)〜(6)はプログラムの一部である。それぞれの部分が実行された
ときに表示される内容を書け。
何も表示されない場合は,「表示されない」と書け。
■各5点計30点
(1)
int x = 10;
x = x + 2;
printf( "%d¥n", x );
(2)
int x = 53;
printf( "%d¥n", x % 7 );
(3)
int x = 50;
x = x * 3;
printf( "%d¥n", x );
(4)
int x = 20;
if( x != 20 ) {
printf( "x != 20¥n" );
}
if( x == 20 ) {
printf( "x == 20¥n" );
}
if( 20 >= x ) {
printf( "20 >= x¥n" );
}
(5)
int x = 75;
if( x < 10 ) {
printf( "x < 10¥n" );
}
else {
printf( "x >= 10¥n" );
}
(6)
int x = 25; int mod = x % 3;
if( mod == 0 ) {
printf( "mod is 0¥n" );
}
else if( mod == 1 ) {
printf( "mod is 1¥n" );
}
else {
printf( "mod is 2¥n" );
}
★答え:
(1)
12
(2)
4
(3)
150
(4)
x == 20
20 >= x
(5)
x >= 10
(6)
mod is 1
●問題6:以下の(1)か(2)のどちらか一方を選択して答えよ。なお,(1)も(2)も答え
は同じになる。
■10点
(1)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, n = 0, sum = 0;
i = 1; n = 6; sum = 0;
while( i <= n ) {
sum = sum + i;
i++;
}
printf( "%d¥n", sum );
(2)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, n = 0, sum = 0;
n = 6; sum = 0;
for( i = 1; i <= n; i++ ) {
sum = sum + i;
}
printf( "%d¥n", sum );
★答え: 21
●問題7:以下の(1)か(2)のどちらか一方を選択して答えよ。なお,(1)も(2)も答え
は同じになる。
■10点
(1)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, j = 0, k = 0, m = 0;
i = 0; j = 0; k = 5, m = 8;
while( i < k ) {
m = m + 3;
j = m + k + i;
i++;
}
printf( "%d¥n", j );
★答え: 32
(2)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, j = 0, k = 0, m = 0;
j = 0; k = 5, m = 8;
for( i = 0; i < k; i++ ) {
m = m + 3;
j = m + k + i;
}
printf( "%d¥n", j );
★答え: 32
●問題8:以下の(1)か(2)のどちらか一方を選択して答えよ。なお,(1)も(2)も答え
は同じになる。
■5点
(1)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, j = 0, k = 0;
i = 0; j = 20; k = 10;
while( i < k ) {
j = j + k;
if( i % 3 == 0 ) k--;
k--;
i++;
}
printf( "%d¥n", j );
★答え: 51
(2)以下は,プログラムの一部である。この部分が実行されたときに表示される内容
を書け。
int i = 0, j = 0, k = 0;
j = 20; k = 10;
for( i = 0; i < k; i++ ) {
j = j + k;
if( i % 3 == 0 ) k--;
k--;
}
printf( "%d¥n", j );
★答え: 51