2012年3月全國計算機等級考試二級C語言上機題庫(10~20套)
考試頻道小編收集整理計算機等級考試資料,免費提供給大家交流參考。
第十一套
1. 程序填空
給定程序中,函數fun的功能是:計算形參x所指數組中N個數的平均值,(規定所有數均為正數),將所指數組中大於平均值的數據移至數據的前部,小於等於平均數的移至x所指數組的後部,平均值作為函數值返回,在主函數中輸出平均值和移動後的數據。
第一處 av=s/N;
第二處 y[j++]=x[i];x[i]=-1;}
第三處 if(x[i]!=-1)
y[j++]=x[i];
2. 程序修改
給定程序MODI1.C中函數fun的功能是:讀入一行英文文本行,將其中每個單詞的第一個字母改成大寫,然後輸出次文本行(這裏的“單詞”是指由空格隔開的字符串)。
/**found**/
#include
/**found**/
upfst (char *p)
3. 程序設計
程序定義了N×N的二級數組,並在主函數中賦值,請編寫函數fun,函數的功能是:求出數組周邊元素的平均值並作出函數值飯給主函數中的s。
double fun(int w[][N])
{ int i,j,n=0;
double sum=0;
for(i=0;i { sum+=w[0][i]+w[N-1][i]; n+=2;} for(i=1;i { sum+=w[i][0]+w[i][N-1]; n+=2; } return sum/n; } 第十二套 1. 程序填空 給定程序中,函數fun的功能是:將自然數1—10以及它們的平方根寫到名為的文本文件中,然後再順序讀出顯示在屏幕上。 第一處 fprintf(fp,”%d%fn”,i,sqrt((double)i)); 第二處 fclose(fp); 第三處 if((fp=fopen(fname,”r”))==NULL) 2. 程序修改 給定程序MODI1.C中函數fun的功能是:將n個無序整數從小到大排序。 /**found**/ for(i=j+1;i /**found**/ p=i; 3. 程序設計 函數fun的功能是:將a、b中的兩位正整數合併形成一個新的整數放在c中。合併的方式是:將a中的十位和個位依次放在變量c的個位和百位上,b中的十位和個位數依次放在變量c的十位和千位上。 #include void fun(int a,int b,long *c) { *c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);} 第十三套 1. 程序填空 給定程序中,函數fun的功能是:找出N*N矩陣中每列元素中的最大值,並按順序一次存放於形參b所指的一維數組中。 第一處 b[i]=a[0][i]; 第二處 if (b[i] b[i]=a[j][i]; 第三處 fun(x,y); 2. 程序修改 給定程序MODI1.C中函數fun的功能是:交換主函數中的兩個變量的值。 /**found**/ int fun(int *x,int *y) /**found**/ t=*x;*x=*y;*y=t; 3. 程序設計 編寫函數fun,函數的功能是求出小於或等於lim的所有素數並放在aa數組中,函數返回所求出的素數的個數。函數fun中給出的語句僅供參考。 #include #define MAX100 int fun(int lim,int aa[MAX]) {int i,j,k=0; for(i=2;i<=lim;i++) { for(j=2;j<=(i/2);j++) if(i%j==0)break; if(j>(i/2))aa[k++]=i; } return k;} 第十四套 1. 程序填空 函數fun的功能是進行字母轉換。若形參ch中小寫英文字母,則轉換成相應的大寫英文字母;若形參ch中是大寫英文字母,則轉換成相應的小寫英文字母;並將轉換的結果作為函數值返回。 第一處 if((ch>=’a’)&&(ch<=’z’)) 第二處 return ch+’a’-‘A’ 第三處 return ch; 2. 程序修改 給定程序MODI1.C中函數fun的功能是:給一維數組a輸入任意四個整數並按下列的規律輸出。例如輸出1、2、3、4,程序輸出一下方陣。 a) 1 2 3 3 4 1 2 2 3 4 1 1 2 3 4 /**found**/ void fun(int *a) /**found**/ a[j]=a[j-1]; 3. 程序設計 請編寫函數fun,函數的功能是:計算並輸出給定整數n的所有因子(不包過1和n本身)之和。規定n的值不大於1000. int fun(int n) { int s=0,i; for(i=2;i if(n%i==0)s+=i; return s; } 第十五套 1. 程序填空 給定程序中,函數的功能是:把形參s所指字符串下標為奇數的字符右移到下一個奇書位置,最右邊唄移出字符串的字符繞回放到第一個奇數位置,下標為偶數的字符不動(注:字符串的長度大於等於2)。例如,形參s所指的字符串為:abcdefgh,執行結果為:ahcbedg。 第一處 if(n%2==0) k=n-1; 第二處 c=s[k]; 第三處 s[1]=c; 2. 程序修改 給定程序MODI1.C中函數fun的功能是:求 s=aa…aa—…—aaa—aa—a(此處aa…aa表示n個a,a和n的值在1至9之間)。 /**found**/ long s=0,t=0; /**found**/ t=t/10; 3. 程序設計 請編寫一個函數void fun(char*tt,int pp[ ]),統計在tt所指字符串中‘a’至‘z’26個小寫字母各自出現在的次數,並依次放在pp數組中。 void fun(char*tt, int pp[ ]) { char *p=tt; int i; for(i=0;i<26;i++) pp[i]=0; while(*p) {if(*p>=’a’&&*p<=’z’) pp[*p-‘a’]+=1; p++; } }