二級C語言程式設計題總結 程式設計方法

2021-10-13 09:41:11 字數 4709 閱讀 6801

新視野教育二級c語言程式設計題

方法和技巧總結

a. 程式設計題中涉及「簡單的數學計算」的相關題目:28、2、18、(老版本)第70題

b. 程式設計題第28題的操作過程

(1)題目:計算pi的值(要求滿足精度0.0005,即某項小於0.0005時停止迭代)

(2)分析:該題用最新的方法做題,非常方便,只要記住pi的近似值為3.14即可。

此題做題思路:不管精度如何, pi的值是固定的,只是小數點後面的值不同而已,3.14不會變化。

(3)操作步驟:

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun ( double eps)

【步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。

注意:當游標在閃爍的時候,表示要求輸入資料,此時輸入0.005後回車,將得到正確結果,如果沒有輸入測試資料,則不能得分。

【步驟4】評分

c. 程式設計題中涉及「簡單的數學計算」的相關題目:2

(1)題目:

(2)分析:該題用最新的方法做題,非常方便,結果輸入10個1.718282即可。

(3)步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun(int n)

步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【之所以輸入50,是因為題目中的舉例,若輸入50,則輸出s=1.718282,如果輸出的結果與s=1.718282不符,則不正確。】

【步驟4】評分

d. 程式設計題中涉及「簡單的數學計算」的相關題目:18

(1)題目:

(2)分析:該題用最新的方法做題,非常方便,結果輸入10個2.718282即可。【提醒:此題和第2題的區別在於18題多加了乙個1】

(3)解題步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun(int n)

步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【之所以輸入15,是因為題目中的舉例。】

【步驟4】評分。【雖然得到的分數不是滿分,但是這個方法至少可以得到分數,後面會將其它的程式設計方法,考生可以參考進行重新編寫。】

e. 程式設計題中涉及「簡單的數學計算」的相關題目:【老版本第70題】

(1)題目:

編寫函式fun,它的功能是:利用以下所示的簡單迭代方法求方程:cos(x)-x=0的乙個實根。

xn+1=cos(xn)

迭代步驟如下:

1)取x1初值為0.0;

2)x0=x1,把x1的值賦給x0;

3)x1=cos(x0),求出乙個新的x1;

4)若x0-x1的絕對值小於0.000001,執行步驟(5),否則執行步驟(2)。

5)求x1就是方程cos(x)-x=0的乙個實根,作為函式值返回。

程式將輸出結果root=0.739086。

(2)分析: 求cos(x)-x=0的乙個實根,題目給出了root=0.739086,因此在函式中將0.

739086返回即可。考試的時候輸入:0.

739081至0.739089中的任何乙個數都能得分,在這裡我們輸入0.739085,該軟體如果輸入其它的值將不能得分,但是考試的時候會得分。

(3)解題步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun()

【步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【注意:該題不需要輸出測試資料,即可得到結果。如果輸出的不是root=0.739085,就是錯誤的,因此要注意結果的正確性。】

【步驟4】評分。

a. 程式設計題中涉及「合併兩個數」的相關題目:14(5241)、20(2415)、42(4215)、43(1524)、46(1425)

b. 程式設計題第20題的操作過程

(1)題目:將a中的十位和個位依次放在變數c的百位和個位上,b中的十位和個位數依次放在變數c的十位和千位上。例如,當a=45,b=12,呼叫該函式後,c=2415。

(2)分析:將a和b中的十位、個位依次取出,然後進行重組即可。涉及「求餘」和「整除」考點:

a%10得到a的個位,例如:12%2的結果為2,剛好是12的個位。

a/10得到a的十位,例如:12/10的結果為1,剛好是12的十位。

a/100得到a的百位,例如:123/100的結果為1,剛好是123的百位。

因此,先取出a和b中的十位和個位,然後再進行重組。c的千位為b的個位,c的百位為a的十位,c的十位為b的十位,c的個位為a的個位,所以組合方式為:*c=(b%10)*1000+(a/10)*100+(b/10)*10+(a%10)*1;

(3)解題步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

void fun(int a, int b, long *c)

【步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【輸入資料時45和12中間必須有空格,不能加入其它的字元或者逗號分隔,因為在main函式中有scanf("%d%d", &a, &b); 要求從鍵盤中輸入兩個數給變數a和b,如果不輸入或者錯誤的輸入方式,將會導致得不到正確的結果。如果結果不是2415的話,那麼就是不正確的。

】複習知識點:scanf("%d%d", &a, &b); 使用scanf函式進行輸入資料時,使用「空格、回車或者製表符」作為分隔符,將輸入資料進行分隔開。

【步驟4】評分。

c. 其他題目和20題分析和做題步驟都是一致的,因此不再截圖,考生自行練習。

「求和和求積」是二級c上機考試中重點知識,謹記以下幾點:

求和一般使用sum來表示求和,並且必須給sum賦初值為0。

求積一般使用s來表示求積,並且必須給s賦初值為1。

如果公式中有1/n,那麼在迴圈體中一定變為1.0/i。

a. 涉及的題目:第29、41、【老版本】89題

b. 程式設計題29題操作:

(1)題目:

編寫函式fun,它的功能是:計算並輸出下列級數和:

例如,當n = 10時,函式值為:0.909091。

(2)分析: 根據公式計算s的值,從公式中可以發現s求的是和,公式中的通項為1/n(n+1)。

首先定義變數:int i; /*i用於控制迴圈*/

double sum=0.0; /*用sum計算公式中的和,一定要注意,必須賦初值為0.0。*/

其次,編寫for迴圈:

for(i=1;i<=n;i++) /* i=1;表示迴圈變數i的初始值,表示迴圈的起點。i<=n;表示迴圈的終止,i++表示每次自增1*/

sum=sum+1.0/(i*(i+1sum=sum+通項*/

最後,返回sum的值。

return sum;

(3)解題步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun( int n )

return sum;

} 【步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【該題不需要輸入測試資料,題目中有「例如,當n = 10時,函式值為:0.

909091。」如果輸出的不是0.909091的話,就說明程式是錯誤的,如果出現0.

909091,那麼恭喜你可以得到24分!】

【步驟4】評分。

c. 程式設計題第41題操作過程

(1)題目:

(2)分析:根據公式計算sn的值,從公式中可以發現sn求的是和,公式中的通項為1/(2*n-1)-1/(2*n) 【注意此題中的通項有些難找,考生一定要注意!】。

首先定義變數:int i; /*i用於控制迴圈*/

double sum=0.0; /*用sum計算公式中的和,一定要注意,必須賦初值為0.0。*/

其次,編寫for迴圈:

for(i=1;i<=n;i++) /* i=1;表示迴圈變數i的初始值,表示迴圈的起點。i<=n;表示迴圈的終止,i++表示每次自增1*/

sum=sum+1.0/(2*i-1)-1.0/(2*isum=sum+通項*/

最後,返回sum的值。

return sum;

(3)解題步驟

【步驟1】開啟「程式設計題」題目,在fun函式的函式體中輸入以下**:

double fun(int n)

return sum;

} 【步驟2】編譯程式,如果沒有錯誤則執行查詢。

【步驟3】輸入測試資料,檢視結果。【之所以輸入測試資料8,是因為題目中有「從鍵盤給n輸入8,輸出結果為:s=0.

662827」,若輸出結果剛好是s=0.662827,那麼恭喜你24分到手!否則必須重新編寫程式**。

】【步驟4】評分。

d. 程式設計題【老版本】89題解題過程

(1)題目:

編寫函式fun,它的功能是計算:

s作為函式值返回。在c語言中可呼叫log ( n )函式求ln (n)。log函式的引用說明是:double log(double x)。

例如,若m的值為20,fun函式值為6.506583。

(2)分析:根據公式計算s的值,從公式中可以發現s求的是和的平方根,公式中的通項為ln(m)。

首先定義變數:int i; /*i用於控制迴圈*/

double sum=0.0; /*用sum計算公式中的和,一定要注意,必須賦初值為0.0。*/

C語言二級程式設計題技巧總結

上機程式設計題總結 一 程式設計題的基本演算法 1.求和問題。1 迴圈控制變數 計數器的範圍。2 和變數的初值一般為0。3 如是分數求和,請注意整除問題。4 在確保前三個條件的情況下,按程式設計的思路,一步步完善。2.求乘積問題。1 積變數 2 乘積表示式作分母的時候,是乙個整體,括號。3.找最大值...

C語言程式設計題

第一題 將兩個兩位數a,b合併成為乙個四位數,合併規則為 a的十位數作為新數的千位,b的十位數做百位,a的個位做十位,b的個位做個位。a,b從鍵盤輸入,例如輸入23,45,則輸出2435。第二題 從鍵盤輸入乙個雙精度數,保留其小數點後兩位,對第三位進行四捨五入,例如輸入12.3456,則輸出12.3...

C語言二級上機考試程式設計題答案

1 求1 2 3 100。迴圈 答案 include void main 2 求1 2 3 10。迴圈 答案void main printf d j return 0 3 輸入三個數字,輸出他們的最大值。if 答案 include void main int max int x,int y,int ...