《高級(jí)語(yǔ)言程序設(shè)計(jì)》實(shí)踐環(huán)節(jié)考核指導(dǎo)_第1頁(yè)
《高級(jí)語(yǔ)言程序設(shè)計(jì)》實(shí)踐環(huán)節(jié)考核指導(dǎo)_第2頁(yè)
《高級(jí)語(yǔ)言程序設(shè)計(jì)》實(shí)踐環(huán)節(jié)考核指導(dǎo)_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余5頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、高級(jí)語(yǔ)言程序設(shè)計(jì)實(shí)踐環(huán)節(jié)考核指導(dǎo)(2006 年 2 月修訂 )一、類(lèi)型課程實(shí)驗(yàn)考核二、目的與要求高級(jí)語(yǔ)言程序設(shè)計(jì)是一門(mén)理論與實(shí)踐密切結(jié)合、實(shí)踐性較強(qiáng)的課程。本考核主要達(dá)到兩個(gè)目的:1、檢查學(xué)生掌握C 語(yǔ)言基本語(yǔ)法的水平;2、檢查學(xué)生以C 語(yǔ)言開(kāi)發(fā)、調(diào)試簡(jiǎn)單程序的能力。三、考核環(huán)境軟件要求:Windows 操作系統(tǒng);Visual C+ 6.0英文版??荚囅到y(tǒng): 高等教育自學(xué)考試計(jì)算機(jī)信息管理專(zhuān)業(yè)考試系統(tǒng)四、考核內(nèi)容1、 C 語(yǔ)言的簡(jiǎn)單命令、函數(shù)和基本的語(yǔ)法規(guī)則;2、循環(huán)、分支語(yǔ)法規(guī)則(特別是復(fù)雜條件式的書(shū)寫(xiě)規(guī)則);3、掌握一維數(shù)組和二維數(shù)組的定義及使用方法;4、函數(shù)的設(shè)計(jì)和調(diào)用方法;5、熟練掌握

2、結(jié)構(gòu)型的定義和使用方法。五、考核時(shí)間與形式考核時(shí)間為60 分鐘;采用閉卷形式,考生首先從考核服務(wù)器下載考核用文件到d:2005ks 下,所有答案都直接做在文件夾 d:2005ks 內(nèi),最后根據(jù)考試要求把答案文件上傳到考核服務(wù)器上考生自己的文件柜中(上傳的答案文件不要壓縮打包) 。請(qǐng)認(rèn)真閱讀“考試系統(tǒng)”使用說(shuō)明。六、注意事項(xiàng)1遵守考場(chǎng)紀(jì)律, 因計(jì)算機(jī)引起的問(wèn)題請(qǐng)及時(shí)與監(jiān)考老師聯(lián)系;2考生不要等到最后才上傳答案文件,以免因最后時(shí)刻交卷人員太多造成服務(wù)器響應(yīng)速度低;上傳文件前務(wù)必關(guān)閉相應(yīng)的軟件。例如上傳Word 文檔前應(yīng)關(guān)閉Word 系統(tǒng)。3如果發(fā)現(xiàn)無(wú)法登錄系統(tǒng),請(qǐng)及時(shí)與監(jiān)考老師聯(lián)系,由監(jiān)考老師協(xié)助

3、處理。14本系統(tǒng)采取了一定安全性措施,系統(tǒng)自動(dòng)記錄考生的登錄時(shí)間和登錄微機(jī)(登錄時(shí)間取自服務(wù)器) 。一旦發(fā)現(xiàn)同一時(shí)間段內(nèi)有兩臺(tái)微機(jī)同時(shí)以某個(gè)考號(hào)登錄系統(tǒng),將按作弊處理。一旦發(fā)現(xiàn)某臺(tái)微機(jī)在考試期間用兩個(gè)準(zhǔn)考證號(hào)登錄過(guò)考試系統(tǒng)。也按照作弊處理。5考試完畢,主動(dòng)刪除D 盤(pán)上的相關(guān)文件夾。6本次考試,要求熟練掌握壓縮軟件 Winzip/Winrar 的使用。能夠用 Winzip/Winrar 壓縮含有目錄的文件夾和解壓縮含有目錄的文件夾。7注意保護(hù)自己的二次登錄密碼,不要被其他考生知道。8考生在考試前如果使用了模擬環(huán)境,請(qǐng)于考試開(kāi)始前關(guān)閉所有瀏覽器窗口,然后重新登錄考試服務(wù)器。七、題型與要求請(qǐng)參考以下

4、樣題。樣題一一、 (20 分 ) 請(qǐng)閱讀以下程序“a1.c”,回答問(wèn)題。#include "stdio.h"main() int n,k=0;printf("enter a number:");scanf("%d", &n);while(n!=0) +k; n/=10;print("The result is %dn",k);1、糾正程序中的兩個(gè)語(yǔ)法錯(cuò)誤,將正確的程序存入a1.c,并將程序?qū)崿F(xiàn)的功能寫(xiě)在下面。2、編譯運(yùn)行該程序,若輸入為 “ 5436 ”,則輸出是什么?將其輸出結(jié)果寫(xiě)在下面。二、( 40 分

5、)完善程序題目1、用起泡法對(duì)10 個(gè)數(shù)進(jìn)行排序。 起泡法的思路是:將相鄰兩個(gè)數(shù)比較,將小的調(diào)到前頭。請(qǐng)?zhí)钛a(bǔ)程序“a2.c”的空缺,改正其中的錯(cuò)誤,并編譯執(zhí)行之。將正確的程序存入a2.c。假設(shè)輸入以下數(shù)列“100101 577568720980”,程序的輸出是什么?2、用選擇法對(duì)數(shù)組中10 個(gè)整數(shù)按由小到大排序。所謂選擇法就是:先將10 個(gè)數(shù)中最小的數(shù)與a0 對(duì)換;再將a1 到 a9 中最小的數(shù)與a1 對(duì)換;,每比較一輪,找出一個(gè)未經(jīng)排序的數(shù)中最小的一個(gè)。請(qǐng)?zhí)钛a(bǔ)程序“ a3.c”的空缺,改正其中的錯(cuò)誤,并編譯執(zhí)行之。將正確的程序存入a3.c2假設(shè)輸入以下數(shù)列“100981077568720984

6、”,程序的輸出是什么?第 1 題程序 a2.c#include "stdio.h"void main()int a11;int i,j,t;printf("input 10 numbers :n");for(i=1;i<11;i+)scanf("%d",&ai);printf("n");for(j=1;j<=9;j+)for(i=1;i<=10-j;i+)if(ai>ai+1)t=_;ai=_;ai+1=_;printf("the sorted numbers :n&quo

7、t;);for(i=1;i<11;i+)printf("%d ",ai);第 2 題程序 a3.cvoid sort(array,n)int array;int n;int i,j,k,t;for(i=0;i<n-1;i+)k=i;for(j=i+1;j<n;j+)if(arrayj<arrayk) k=j;t=_;arrayk=_;arrayi=_;main() int a10,i; printf("enter the arrayn");for (i=0;i<10;i+)scanf("%d",&

8、ai);sort(a,10);printf("the sorted array :n");for (i=0;i<10;i+)printf("%d ",ai);printf("n");三、編寫(xiě)程序(40 分)求解方程 x2+5y 2=z2( 0<x<y<z<20 )的所有整數(shù)解。 將調(diào)試正確的程序存入文件“a4.c”。再將所有的解答寫(xiě)在下面:樣題二一、 (20 分 ) 編譯以下程序“b1.c”,然后回答問(wèn)題。swap(pt1,pt2)int *pt1,*pt2;int p;p=*pt1;main()*pt1

9、=*pt2;int a,b,c,*p1,*p2,*p3;*pt2=p;scanf("%d,%d,%d",&a,&b,&c);exchange(q1,q2,q3)int *q1,*q2,*q3;p1=&a;p2=&b;p3=&c;if(*q1<*q2) swap(q1,q2);exchange(p1,p2,p3);if(*q1<*q3) swap(q1,q3);printf("n%d,%d,%dn",a,b,c);if(*q2<*q3) swap(q2,q3);31、簡(jiǎn)述函數(shù)swap()的功

10、能。2、假設(shè)輸入為“98, 0, 100”,則程序輸出是什么?二、完善程序或程序糾錯(cuò)(40 分)1、用遞歸方法求n!1( n=0,1)n!n·( n-1) !( n>1 )請(qǐng)?zhí)钛a(bǔ)程序 “ b2.c”的空缺,改正其中的錯(cuò)誤,并編譯執(zhí)行之。將正確的程序存入b2.c。請(qǐng)將 15! 的結(jié)果寫(xiě)在下面:2、 這是一個(gè)利用插入法排序的程序b3.c,請(qǐng)糾正這個(gè)程序中的錯(cuò)誤。第 1 題程序 b2.c第 2 題程序 b3.c :double fac(n)#include <stdio.h>int n;void main ( ) int xx20,yy20;double f;int x,

11、y ,x0,n,nn;if(n<0) printf("n<0,data error!");for(x=0;x<20;x+)read("%d",xxx);else if ();nn=0;else f=;for(x=0;x<20;x+)return(f); x0=xxx;y=0;while(yyy<x0 && y<nn) y+;if(nn<=y) yyy=xomain()else n=nn;int n;while(n>y) yyn=yyn-1; n-;double y;yyy=x0;printf

12、("input a integer number:"); nn+;scanf("%d",&n);y=fac(n);for(y=0;y<20;y+)printf("%d!=%15.0f",n,y);printf("%d",yyy); printf("n");三、編寫(xiě)程序(40 分)有一個(gè)一維數(shù)組,內(nèi)放10 個(gè)學(xué)生成績(jī),寫(xiě)一個(gè)函數(shù),求出平均分,最高分和最低分。將調(diào)試正確的程序存入文件“b4.c”。假設(shè)輸入以下成績(jī)“9945789710067.589926643”,程序的輸出是什么?樣題

13、三一、 (20 分 ) 請(qǐng)閱讀以下程序“c1.c” ,回答問(wèn)題。#include "stdio.h"main( ) void change( );4char c,*p=&c,bb ;while ( (*p=getchar( )!='n' ) bb=2; change(p,&bb) if(bb=1) printf( "%c",*p ) ;void change(char *pc, char *aa) if ( *pc>='a'&&*pc<='z' ) *aa=1;1

14、、糾正程序中的兩個(gè)語(yǔ)法錯(cuò)誤,將正確的程序存入c1.c,并將程序?qū)崿F(xiàn)的功能寫(xiě)在下面。2、編譯運(yùn)行該程序,若輸入為 “ How Are You ”,則輸出是什么?將其輸出結(jié)果寫(xiě)在下面。二、完善程序或程序糾錯(cuò)(40 分)1、找出 1-n 之間的所有素?cái)?shù),并顯示在屏幕上。N 由用戶輸入,為負(fù)值則報(bào)錯(cuò)。請(qǐng)把程序補(bǔ)充完整。2、從鍵盤(pán)上輸入一個(gè)字符串,然后利用指針將其中的數(shù)字和字母分別存入數(shù)組a 和 b中,然后把他們分別輸出。請(qǐng)把程序補(bǔ)充完整。第 1題程序第 2題程序include <stdio.h>#include <stdio.h>void main()void main() i

15、nt n, m, k; int n=0, m=0;scanf( “ %d” , &n);char a80,b80,c80;if(n>0)char *p=c; for(m=2;m<=n;m+)gets(p);forwhile (*p!=0)if(m % k=0) _ if _if(m=k) printf(“ %d,”,m);am=*p; m+; p+;else bn=*p;n+;p+; else prinf(“ Error!” );am= 0 ; bn= 0;;三、編寫(xiě)程序(40 分)編寫(xiě)程序求解百錢(qián)買(mǎi)百雞問(wèn)題。已知大公雞三文錢(qián)一只,大母雞兩文錢(qián)一只,小雞一文錢(qián)買(mǎi)三只。 現(xiàn)有

16、 100 文錢(qián),想買(mǎi) 100 只雞,請(qǐng)編寫(xiě)程序atest.c 解決這個(gè)問(wèn)題。樣題四一、 (20 分 ) 請(qǐng)閱讀以下程序“d1.c”,回答問(wèn)題。#include "stdio.h"main( ) char chint sum=0;for( ; ; ) ch=getchar();5if (ch='n') break;if (ch=>'A' && ch<='Z') sum+;printf("sum=%d",sum);1、糾正程序中的兩個(gè)語(yǔ)法錯(cuò)誤,將正確的程序存入d1.c,并將程序?qū)崿F(xiàn)的

17、功能寫(xiě)在下面。2、編譯運(yùn)行該程序,若輸入為“ Good Morning! ”,則輸出是什么?將其輸出結(jié)果寫(xiě)在下面。二、完善程序或程序糾錯(cuò)(40 分)1、有學(xué)生信息如下,學(xué)號(hào)(整型) ,姓名 (字符串型 ),三門(mén)課的成績(jī)(均為實(shí)型) 。下面程序的功能是輸入 20 名學(xué)生的信息,并計(jì)算每位學(xué)生的總分,最后輸出這些學(xué)生的有關(guān)資料。糾正d2.c 程序中存在的兩個(gè)錯(cuò)誤。2、有一遞推數(shù)列,滿足條件:f(0)=0f(1)=1f(n)=f(n-1)+4f(n-2)考盤(pán)“考核試題”文件夾中的程序“d3.c”可根據(jù)輸入的n 值計(jì)算f(n) 。請(qǐng)?zhí)钛a(bǔ)該程序中的空缺,改正其中的錯(cuò)誤,并編譯執(zhí)行之。將正確的程序存入d3

18、.c。請(qǐng)將 f(10) 的結(jié)果寫(xiě)在下面:第 1 題程序 d2.c第 2 題程序 d3.cstructure student;include <stdio.h> int no;void main ( )char xm10; long int x0, x1, xc ;int score3, zf;int i, n ; stu20;read ("%d", &n );x0=0 ;void main()x1=1 ;int n, k;for (i=2; i<n; i+)for(n=0;n<20;n+) xc=_ ;printf(請(qǐng)“輸入第%d 個(gè)學(xué)生信息

19、 : ” ,n+1);x0=x1;scanf( “ %d” ,stun.num);x1=_ ;scanf( “ %s” ,stun.xm);stun.zf=0;printf ("The result is %dn",xc) ;for(k=0;k<3;k+) scanf(“ %d” ,stun.scorek);stun.zf=stun.zf+stun.scorek;printf(現(xiàn)“在輸出結(jié)果n” );for(n=0;n<20;n+)printf(“ %d%s%d%d%d%d n ” ,stun.no, stun.xm, stun.score0, stun.score1,stun.score2, stun.zf);三、編寫(xiě)程序(40 分)編寫(xiě)程序,要求用戶不停地輸入學(xué)生的學(xué)號(hào)和考試成績(jī),直到學(xué)號(hào)為-1 結(jié)束輸入。程序6自動(dòng)輸出這些數(shù)據(jù)中的最高分,最低分以及取得這兩個(gè)成績(jī)的學(xué)生的學(xué)號(hào)、成績(jī)。(考試成績(jī)的范圍為0 至 100 分)。(可參考實(shí)踐指導(dǎo)書(shū)59 頁(yè))。樣題參考答案樣題一一

溫馨提示

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

評(píng)論

0/150

提交評(píng)論