新視野教育二級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 ...