精華區beta NTU-Exam 關於我們 聯絡資訊
課程名稱︰計算機程式語言 課程性質︰大一必修 課程教師︰林達德 開課系所︰生機系 考試時間︰93/11/11 試題 : 一.下列敘述執行後變數A,B,C,D,E之值分別為何?(10分) int A=0,B=0,C=0,D=0,E=0; while( B < = 20 ) { A = A + 2; B = B + A; C++; D = B + C % 2; E * = 2.0; } 二.下列敘述執行後變數A,B,C,D,E之值分別為何?(10分) int x[10] = {10,20,30,40,50,60,70,80,90,100}; int A,B,C,D,E; A = x[2]; B = x[5]; C = x[0] + x[2] + x[4]; for( int i=0; i<10; i++ ) if( i % 2 == 0 ) x[i]=0; D = x[5] * x[6]; E = x[7] + x[8]; 三.下列程式片段執行後的結果請列於答案欄中(10分) for(int i=0; i<10; i++) { for(int j=0; j<10-1; j++) { cout << '*'; } cout << endl; } 四.請將下列程式在個人電腦上執行後之輸出結果仔細地填入答案欄中(10分) #include <iostream> using std::cout; using std::endl; int funct1(int a); int funct2(int a); int a = 0, b = 0; 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+2 ) + 2; return b; } int funct2( int a) { return(b+a); } 五.請用while迴圈寫出一個程式計算出下式,並將結果輸出至電腦螢幕(10分) 1! + 3! + 5! + 7! + ...... + 49! 六.請設計一個程式,列出九九乘法表,其格式如下:(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 七.請設計一個程式,其功能為找出1至N之間的質數,整數N之值由使用者輸入, 找到的質數請輸出至螢幕上(10分) 八.請寫出一個函式(function)與呼叫此函式之主程式,由主程式傳入x值,依 照下列公式,傳回函數計算之結果.同時由主程式呼叫此函式,計算及在螢 幕列出 x 由 0 到 20 間之 y ( x ) 函數值.(15分) { x^2 - 1 若x<4 y(x)={x^3 - 15x - 4 若4<=x<=10 { 8x^2 + 46 若x>10 九.請寫出一個程式計算擲五枚銅板出現正面次數的機率.此程式必須以主程 式 main() 呼叫函式 int five_coins() 的方式完成,而 int five_coins() 函式所傳回給主程式的整數為隨機模擬丟擲五枚銅板後出現正面的銅板數. 主程式則需要將每次的結果累計,最後將模擬丟擲 50000 次銅板後,出現 銅板正面為四個以上的機率輸出至螢幕上.(15分) [Hint:你將可能會使用到 srand() 及 rand() 函式] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.240.67 ※ 編輯: treva 來自: 140.112.240.67 (11/11 22:05)