日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

全国计算机等级考试题库二级C操作题100套(第57套)

發布時間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 全国计算机等级考试题库二级C操作题100套(第57套) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第57套:

函數fun的功能是:把形參a所指數組中的最小值放在元素a[0]中,接著把 形參a所指數組中的最大值放在a[1]元素中;再把a所指數組元素中的次小值放 在a[2]中,把a所指數組元素中的次大值放在a[3];其余以此類推。例如:若a 所指數組中的數據最初排列為:9、1、4、2、3、6、5、8、7;則按規則移動 后,數據排列為:1、9、2、8、3、7、4、6、5。形參n中存放a所指數組中數 據的個數。
注意:規定fun函數中的max存放當前所找的最大值,px存放當前所找最大 值的下標。
請在程序的下劃線處填入正確的內容并把下劃線刪除,使程序得出正確的結果。
注意:源程序存放在考生文件夾下的BLANK1.C中。
不得增行或刪行,也不得更改程序的結構!
給定源程序:

include <stdio.h>

#define N 9 void fun(int a[], int n) { int i,j, max, min, px, pn, t; for (i=0; i<n-1; i+=2) { max = min = ___1___; px = pn = i; for (j=i+1; j<n; j++) { if (max<___2___) { max = a[j]; px = j; } if (min>___3___) { min = a[j]; pn = j; } } if (pn != i) { t = a[i]; a[i] = min; a[pn] = t; if (px == i) px =pn; } if (px != i+1) { t = a[i+1]; a[i+1] = max; a[px] = t; } } } main() { int b[N]={9,1,4,2,3,6,5,8,7}, i; printf("\nThe original data :\n"); for (i=0; i<N; i++) printf("%4d ", b[i]); printf("\n"); fun(b, N); printf("\nThe data after moving :\n"); for (i=0; i<N; i++) printf("%4d ", b[i]); printf("\n"); }

解題思路:
第一處:外循環每循環一次均把數組a當前位置的值,分別賦值給max和min變量,所以應填: a[i]。
第二處:判斷max是否小于a[j],若小于,則把a[j]賦值給max,所以應填:a[j]。
第三處:判斷min是否大于a[j],若大于,則把a[j]賦值給min,所以應填:a[j]。


給定程序MODI1.C中函數fun的功能是:用遞歸算法計算斐波拉契數列中第n 項的值。從第1項起,斐波拉契數列為:1、1、2、3、5、8、13、21、……
例如,若給n輸入7,該項的斐波拉契數值為:13。
請改正程序中的錯誤,使它能得出正確結果。
注意:不要改動main函數,不得增行或刪行,也不得更改程序的結構。
給定源程序:

#include <stdio.h> long fun(int g) { switch(g); { case 0: return 0; case 1 ;case 2 : return 1 ; } return( fun(g-1)+fun(g-2) ); } main() { long fib; int n; printf("Input n: "); scanf("%d",&n); printf("n = %d\n",n); fib=fun(n); printf("fib = %d\n\n",fib); }

解題思路:
第一處:switch后有多余的分號。
第二處:case 1后沒有返回語句,也應該為return 1;。所以應改為:case 1: return 1; case
2:return 1;。


某學生的記錄由學號、8門課程成績和平均分組成,學號和8門課程的成績已 在主函數中給出。請編寫函數fun,它的功能是:求出該學生的平均分放在記錄的ave成員中。
例如,學生的成績是:85.5,76,69.5,85,91,72,64.5,87.5,他的平均分應當
是:78.875。
注意: 部分源程序在文件PROG1.C中。
請勿改動主函數main和其它函數中的任何內容,僅在函數fun部位中填入你編寫的若干語句。
給定源程序:

#include <stdio.h> #define N 8 typedef struct { char num[10]; double s[N]; double ave; } STREC; void fun(STREC *a) { } main() { STREC s={"GA005",85.5,76,69.5,85,91,72,64.5,87.5}; int i; fun( &s ); printf("The %s's student data:\n", s.num); for(i=0;i<N; i++) printf("%4.1f\n",s.s[i]); printf("\nave=%7.3f\n",s.ave); NONO(); }

解題思路:
本題是求記錄結構中學生課程成績的平均值,其結果仍放在該記錄結構中。
參考答案:

void fun(STREC *a) { int i ; for(i = 0 ; i < N ; i++) a->ave = a->ave + a->s[i] ; a->ave /= N ; }

總結

以上是生活随笔為你收集整理的全国计算机等级考试题库二级C操作题100套(第57套)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。