計程91年考古題
計算機程式語言91學年度期中考試題
第一題:(10分)
假設x的值為15,y的值為2,z的值為17,請將下列關係運算式的真假值寫出來。
x + y >= z
y == x-2*z-5
6*y != z - 5
x > y && z > y
(x=y)==2
第二題:(10分)
下列敘述執行後 a, b 這兩個變數之值分別為何?
void main(void)
{
int a=1, b=0;
for(int i=0; i<=60; i=i+5 )
{
a = a*2;
if( a <= 100 )
b += 5;
}
}
第三題:(10分)
下列程式片段執行後的結果請列於答案欄中
for( int i=1; i<=3; i++ )
{
for( int j=1; j<=3; j++ )
{
for( int k=1; k<=6; k++ )
cout << '*';
cout << endl;
}
cout << endl;
}
第四題:(10分)
請將下列程式在個人電腦上執行後之輸出仔細地填入答案欄中。
#include <iostream>
using std::cout;
using std::endl;
int funct1(int a);
int funct2(int a);
int a = 0, b = 1;
main()
{
int count;
for( count = 1; count <=5; ++count)
{
b += funct1(a+1) + 1;
cout << "b = " << b << endl;
}
}
int funct1( int a )
{
b = funct2( a+1 ) + 1;
return b;
}
int funct2( int a )
{
return(b+a);
}
第五題:(10分)
請寫出一個程式計算出下式,並將結果輸出至電腦螢幕。
S = 1 + 1/2 + 1/3 + 1/4 +…. + 1/n, n由鍵盤輸入。
第六題:(10分)
請將下列程式在個人電腦上執行後之輸出仔細地填入答案欄中。
#include <iostream>
using std::cout;
using std::endl;
void function1(void);
int x = 1;
void main(void)
{
function1();
}
void function1(void)
{
if( x >= 30 )
return;
else
{
x = x*2;
cout << "x = " << x << endl;
function1();
}
}
第七題:(10分)
請設計一個程式,列出九九乘法表,其格式如下:
1*1=1 1*2= 2 1*3= 3 1*4= 4 1*5= 5 1*6= 6 1*7= 7 1*8= 8 1*9= 9
2*1=2 2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18
… …
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
第八題:(15分)
請設計一個程式,其功能為找出整數1至N之間的質數,整數N之值由使用者輸入,找到的
質數請輸出至螢幕上。
第九題:(15分)
請寫出一個程式模擬國內樂透彩卷的開獎號碼。此程式必須以主程式main()呼叫函式
int loto_number()的方式完成,而loto_number()函式所傳回給主程式的整數為隨機模擬
1~42中的一個號碼。主程式則需要連續呼叫函式多次以產生一組7個數字的樂透彩號碼
(六個號碼加上一個特別號),最後將結果顯示於螢幕上。
※請特別注意,程式需要檢查相同的號碼不能同時出現於一組樂透彩號碼中。
【Hint: 您將可能會使用到 srand()及rand()函式 】
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.169.25.65