二級-C語言程序設(shè)計_第1頁
二級-C語言程序設(shè)計_第2頁
二級-C語言程序設(shè)計_第3頁
二級-C語言程序設(shè)計_第4頁
二級-C語言程序設(shè)計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

二級-C語言程序設(shè)計二級C語言程序設(shè)計(模擬)(本試卷考試時間120分鐘)一、單選題(本大題10道小題,每小題1.5分,共15分),從下面題目給出的A、B、C、D四個可供選擇的答案中選擇一個正確答案。1.下面四個選項中,均是不合法的用戶自定義標識符的選項是()。A.b-a,for,intB.P-0,do,aC.float,1a0,_AD.-123,temp,INT2.設(shè)有doublen;從鍵盤上輸入整數(shù)給變量n,正確的語句是()。A.scanf(n);B.scanf("n");C.scanf("%f",n);D.scanf("%lf",&n);3.設(shè)a為整型變量,不能正確表達數(shù)學關(guān)系:10<a<15的C語言表達式是()。C.inta[1to5];D.inta[];7.以下選項中正確的語句組是()。A.chars[];s="BOOK!";B.char*s;s={"BOOK!"};C.chars[10];s="BOOK!";D.char*s;s="BOOK!";8.若有定義語句:doublex[5]={1.0,2.0,3.0,4.0,5.0},*p=x;則錯誤引用x數(shù)組元素的是()。A.*pB.x[5]C.*(p+1)D.*x9.下面結(jié)構(gòu)體的定義語句中,錯誤的是()。A.structord{intx;inty;intz;};structorda;B.structord{intx;inty;intz;}structorda;C.structord{intx;inty;intz;}a;D.struct{intx;inty;intz;}a;10.設(shè)有以下程序,若文本文件filea.txt中原有內(nèi)容為:hello,則運行以上程序后,文件filea.txt中的內(nèi)容變?yōu)椋ǎ?include<stdio.h>main(){FILE*f;f=fopen("filea.txt","w");fprintf(f,"abc");fclose(f);}A.helloabcB.abcloC.abcD.abchello二、程序填空題(本大題2道小題,每空2.5分,共20分)。1.以下程序的功能是:移動一維數(shù)組中的內(nèi)容,若數(shù)組中有n個整數(shù),要求把下標從m到n-1(m≤n-1)的數(shù)組元素平移到數(shù)組的前面。例如,一維數(shù)組中的原始內(nèi)容為1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,m的值為7。移動后,一維數(shù)組中的內(nèi)容應為8,9,10,11,12,13,14,15,1,2,3,4,5,6,7。#include<stdio.h>#defineN80voidfun(int*w,intm,intn){inti,j,t;for(i=m;(1);i++){/*數(shù)組各元素依次向后平移一個位置*/t=(2);for(j=n-2;j>=0;j--)w[j+1]=(3);w[0]=t;}}main(){inta[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};inti,m,n=15;printf("Theoriginaldata:\n");for(i=0;i<n;i++)printf("%4d",a[i]);printf("\nEnterm:");scanf("%d",&m);fun((4));printf("\nTheresult:\n");for(i=0;i<n;i++)printf("%4d",a[i]);printf("\n");}2.以下程序的功能是:將字符串中下標為奇數(shù)的字符或ASCII碼為偶數(shù)的字符放入t所指數(shù)組中(規(guī)定第一個字符放在第0位中)。例如,字符串中的數(shù)據(jù)為:A2MN8XY,則輸出應當是:2N8X。#include<stdio.h>#include<string.h>#defineN80voidfun(char*s,chart[]){inti,(1);for(i=0;i<strlen(s);i++)if(i%2||(2))t[j++]=s[i];t[j]=(3);}main(){chars[N],t[N];printf("\nPleaseenterstrings:");gets((4));fun(s,t);printf("\nTheresultis:%s\n",t);}三、操作題(一)程序調(diào)試題(3小題,第1、2小題各3處錯,第3小題4處錯,每改正1處得3分,共30分)1.程序調(diào)試題1調(diào)試要求:下列程序包含,請按題中的功能要求,調(diào)試并修改該程序(在所修改語句后加字樣的注釋),使其運行能得到正確的結(jié)果。將結(jié)果(包括文件和文件)保存到目錄中。功能說明:求兩個正整數(shù)的最大公約數(shù)最常用的方法是"輾轉(zhuǎn)相除法"。該方法是以兩數(shù)中較大的數(shù)除以較小的數(shù),得到的余數(shù)與原來較小的數(shù)構(gòu)成新的一對數(shù),再以較大的數(shù)除以較小的數(shù),如此進行下去,直到余數(shù)為0為止,則較小的數(shù)就是最大公約數(shù)。程序的功能是輸入兩個正整數(shù),輸出它們的最大公約數(shù)。例如,若輸入的兩個正整數(shù)是21和49,則輸出最大公約數(shù)是:7。帶錯誤原程序(見C:\KS\D_3_1.C):#include<stdio.h>intmain(){ inta,b,c; printf("請輸入兩個正整數(shù):"); scanf("%d%d",&a,&b); if(a<b){c=a;a=b;b=c;} c=a%b;while(c=0){a=b; b=c; c=a\b; }printf("最大公約數(shù)是:%d\n",a); return0;}2.程序調(diào)試題2調(diào)試要求:下列程序包含,請按題中的功能要求,調(diào)試并修改該程序(在所修改語句后加字樣的注釋),使其運行能得到正確的結(jié)果。將結(jié)果(包括文件和文件)保存到目錄中。功能說明:輸入一個以回車符結(jié)束的字符串(少于30個字符),過濾掉所有的非數(shù)字字符后轉(zhuǎn)換成對應的十進制整數(shù)輸出(不考慮整數(shù)溢出的情況)。例如輸入:jdk-7u25-win7<回車>,則輸出:n=7257。說明:字符串"jdk-7u25-win7"過濾掉所有的非數(shù)字字符后變成十進制字符串"7257",轉(zhuǎn)換成十進制整數(shù)是7257。帶錯誤原程序(見C:\KS\D_3_2.C):#include<stdio.h>intmain(){ charstr[30]; inti,n; printf("請輸入一個字符串:"); gets(str); n=1; for(i=0;str[i]!='\0';i++) if('0'<=str[i]<='9') n=n*10+str[i]-0; printf("n=%d\n",n); return0;}3.程序調(diào)試題3調(diào)試要求:下列程序包含,請按題中的功能要求,調(diào)試并修改該程序(在所修改語句后加字樣的注釋),使其運行能得到正確的結(jié)果。將結(jié)果(包括文件和文件)保存到目錄中。功能說明:入夏標志著春夏季節(jié)完成轉(zhuǎn)換,氣候?qū)W上入夏的標準是必須要連續(xù)5天日平均氣溫達到22℃或以上,則這連續(xù)5天中的第一天為入夏日,程序的功能是判斷5月份是否入夏并輸出有關(guān)信息。若入夏,則輸出在哪一天入夏,否則輸出5月沒有入夏。說明:以下程序的數(shù)組t中存放了某城市5月份一個月的日平均氣溫,數(shù)組t中下標為0的元素閑置而沒有利用,針對程序中給出的5月份一個月的日平均氣溫,入夏日為5月16日。帶錯誤原程序(見C:\KS\D_3_3.C):#include<stdio.h>voidfun(inta[],intn){inti,c;c=0;for(i=1;i<=n;i++){if(a[i]>22){c++;if(c>=5) returni-5; else continue;}c=0;} return0;}intmain(){intt[32]={0,20,21,22,22,19,18,18,19,22,23,22,21,20,21,20,24,22,25,24,23,21,23,22,21,22,25,26,30,28,27,28};intd; d=fun(t[],31);if(d==0) printf("5月沒有入夏\n");else printf("5月%d日開始入夏\n",d); return0;}(二)編程題(2小題,共35分,其中第1小題15分,第2小題20分)1.編程題1編程要求:請按題中的功能要求,編寫程序并能得到正確的結(jié)果。將結(jié)果(包括文件和文件)保存到目錄中。程序功能:輸入整數(shù)n(設(shè)100≤n≤999),以類似讀數(shù)拼音的格式輸出該數(shù),拼音中"百、十"分別使用"B、S"表示,格式要求參見示例。n為100倍數(shù)時不輸出十位數(shù)與個位數(shù),n為10的倍數(shù)時不輸出個位數(shù),十位數(shù)為0而個位數(shù)不為0時省略"S"。運行示例1:1231B2S3運行示例2:9089B08運行示例3:5605B6S2.編程題2編程要求:請按題中的功能要求,編寫程序并能得到正確的結(jié)果。將結(jié)果(包括文件和文件)保存到目錄中。程序功能:按示例格式完成以下要求。(1) 連續(xù)輸入整數(shù)直至-1,整數(shù)保存在數(shù)組中,設(shè)整數(shù)個數(shù)不超過20個。(2) 判斷數(shù)組中是否存在"001

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論