第一篇:2015 上海計算機等級考試二級C(B卷)
2015二級C(B卷)
一、單項選擇題(答案在最后)
二、填空題(答案在最后)
程序功能:輸入一個正整數,將其各位上為偶數的數字去除,剩余的數按原來從高位到低位的順序組成一個新的數,并將其輸出到文件out1.txt中。例如,輸入:134456779,輸出到文件:135779。代碼:
#include
程序功能:從鍵盤輸入一個字符串和一個字符,統計字符串中該字符出現的次數,并輸出結果。例如,輸入字符串:aBEddfghDdd,輸入字符:d,輸出結果:4。代碼:
#include
三、操作題
(一)程序調試題(3小題,第1、2小題各3處錯,第3小題4處錯,每錯誤點3分,共30分)1.程序調試題1
調試要求:下列程序(C:KSB_2_1.c)包含3個錯誤,請按題中的功能要求,調試并修改該程序(在所修改語句后加/*******/字樣的注釋),使其運行能得到正確的結果。將程序結果(包括B_2_1.c文件和B_2_1.EXE文件)保存到目錄C:KS中。
功能說明:輸入某人某一個月的月收入(在2500元到8000元之間),計算并輸出該月份他應繳的個人所得稅。個人所得稅采用分段計算方法計算,具體為:月收入不超過3500元(含3500元,以下同)免稅;月收入超過3500元但不超過5000元的,超過部分的稅率為3%;月收入超過5000元但不超過8000元的,超過5000元部分的稅率為10%。運行示例:
輸入:請輸入月收入: 7000 輸出:個人所得稅為: 245.00 說明:月收入7000元中3500元免稅,1500元的稅利為3%,2000元的稅利為10%。含錯誤源程序:
#include
參考答案: #include
float salary,tax;
printf(“請輸入月收入: ”);
scanf(“%f”, &salary);
/*******/
if(salary<=3500)tax=0;
/*******/
else if(salary<=5000)tax=(salary-3500)*0.03;
else tax=1500*0.03+(salary-5000)*0.1;
/*******/
printf(“個人所得稅為: %.2fn”, tax);}
2.程序調試題2
調試要求:下列程序(C:KSB_2_2.c)包含3個錯誤,請按題中的功能要求,調試并修改該程序(在所修改語句后加/*******/字樣的注釋),使其運行能得到正確的結果。將程序結果(包括B_2_2.c文件和B_2_2.EXE文件)保存到目錄C:KS中。
功能說明:自定義一個表示分數的結構體類型,在主函數中輸入兩個分數,通過調用函數計算兩個分數的和,最后在主函數中輸出計算的結果(不化簡)。運行示例: return 0;
含錯誤源程序: #include
參考答案:
#include
3.程序調試題3
調試要求:下列程序(C:KSB_2_3.c)包含4個錯誤,請按題中的功能要求,調試并修改該程序(在所修改語句后加/*******/字樣的注釋),使其運行能得到正確的結果。將程序結果(包括B_2_3.c文件和B_2_3.EXE文件)保存到目錄C:KS中。
功能說明:輸入兩個由整型數構成的集合(元素個數均為5)分別放到數組A和B中,求這兩個集合的交集(交集的元素由兩個集合中的相同元素構成),最后輸出交集中的元素。運行示例:
含錯誤源程序:
#include
參考答案:
#include
/*******/ int main(void){
int a[5],b[5],c[5];
int i,n;
printf(“請輸入第一個集合內容,5個整型數n”);
for(i=0;i<5;i++)
scanf(“%d”,&a[i]);
printf(“請輸入第二個集合內容,5個整型數n”);
for(i=0;i<5;i++)
scanf(“%d”,&b[i]);
n=inter(a,b,c);
printf(“A,B交集元素為:n”);
for(i=0;i /*******/ printf(“%4d”, c[i]); printf(“n”); return 0;} int inter(int s1[],int s2[],int s3[]){ int j,i,k=0; /*******/ for(i=0;i<5;i++) { for(j=0;j<5;j++) if(s1[i]==s2[j])break; if(j<5)s3[k++]=s1[i]; /*******/ } return k;} (二)編程題(2小題,共35分,其中第1小題15分,第2小題20分)1.編程題1 編程要求:請按題中的功能要求,編寫程序并能得到正確的結果。將程序結果(包括B_4_1.c文件和B_4_1.EXE文件)保存到目錄C:KS中。程序功能:按示例格式完成以下要求。 (1)輸入10個整數(存入數組a),再輸入整數x。(2)輸出數組a中大于等于x的所有元素。運行示例: 輸入:22 55 66 99 44 33 77 11 0 88 60 輸出:66 99 77 88 參考答案: #include 2.編程題2 編程要求:請按題中的功能要求,編寫程序并能得到正確的結果。將程序結果(包括B_4_2.c文件和B_4_2.EXE文件)保存到目錄C:KS中。 程序功能:按示例格式完成以下要求(驗證數學上考拉茲猜想:任意一個大于1正整數,連續進行特定運算,經有限步驟后,計算結果得到1)。 (1)輸入整數n,如果n小于2,輸出“Error”并結束運行。 (2)如果整數n為偶數,計算n/2,否則計算3*n+1,生成新的整數(仍存為n)。(3)如果生成的整數結果等于1,則結束運行,否則重復步驟(2)與(3)。運行示例1: 輸入:12 輸出:[12] {1}6 {2}3 {3}10 {4}5 {5}16 {6}8 {7}4 {8}2 {9}1 說明:輸入12,第1次計算生成6,第2次計算生成3,……,第9次計算生成1。示例中{1}、{2}至{9}為生成的次數標記,[]、{}與間隔空格都必須保留。運行示例2: 輸入:0 輸出:Error 說明:輸入為0、1或負數,輸出“Error”。參考答案: #include long n; int i,j; scanf(“%ld”,&n); if(n<=0) { printf(“Errorn”); return-1; } printf(“[%ld] ”,n); for(i=1;1;i++) { if(n%2==0) n = n/2; else n = 3*n + 1; printf(“{%d}%ld ”,i,n); if(n==1) break; } printf(“n”); return 0;} 二級 C 程序設計 B 場 參考答案 一、單選題 1.D 2.D 3.B 4.B 5.B 6.C 7.D 8.A 9.D 二、程序填空題參考答案 1.1):【z=0】 2):【n!=0】【n】【n>0】【n>=1】 3):【n%10】【k=n%10】【n-n/10*10】 4):【fclose(fp)】 2.1):【str[i]!='
主站蜘蛛池模板:
影音先锋中文字幕人妻|
人妻出差精油按摩被中出|
亚洲欧美精品综合在线观看|
中文字幕亚洲精品无码|
亚洲精品无码久久久久av麻豆|
插插无码视频大全不卡网站|
无码国产偷倩在线播放|
亚洲 日韩 欧美 成人 在线观看|
欧美日韩精品久久免费|
麻豆精产一二三产区|
欧美日韩一区二区免费视频|
99久久精品无码一区二区毛片|
av中文无码乱人伦在线观看|
久久se精品一区精品二区国产|
99在线精品免费视频|
精品日本一区二区三区在线观看|
久久99精品国产麻豆宅宅|
特级无码毛片免费视频尤物|
性一交一乱一伧国产女士spa|
97se亚洲国产综合自在线尤物|
国产碰在79香蕉人人澡人人看喊|
狠狠色狠狠色综合日日不卡|
成在线人免费无码高潮喷水|
国产婷婷色一区二区三区|
成人做爰高潮尖叫声免费观看|
久久久久人妻精品一区三寸蜜桃|
国产性色av高清在线观看|
中文字幕精品久久久久人妻红杏1|
亚洲国产精品无码aaa片|
国产精品一区二区av交换|
免费国产女王调教在线视频|
久久婷婷五月综合色国产|
国内老熟妇乱子伦视频|
欧美黑人巨大xxxxx|
一本色道av久久精品+网站|
欧美人与禽z0zo牲伦交|
久久男人av资源网站无码软件|
99久久99久久加热有精品|
成人无码专区免费播放三区|
在线点播亚洲日韩国产欧美|
亚洲最大日夜无码中文字幕|