級計算機本科C期末試卷B卷_第1頁
級計算機本科C期末試卷B卷_第2頁
級計算機本科C期末試卷B卷_第3頁
級計算機本科C期末試卷B卷_第4頁
級計算機本科C期末試卷B卷_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

資料內(nèi)容僅供您學習參考,如有不當或者侵權(quán),請聯(lián)系改正或者刪除。03級計算機科學與技術(shù)專業(yè)專業(yè)(本科)《高級語言程序設計》課程期末試卷(B)班級姓名學號題號一二三四附加題總分得分【注意】1、考試時間120分鐘2、考試結(jié)束本試卷連同答題紙須全部上交,供講評和存檔用,不交者按缺考計3、所有答題結(jié)果均應寫在答題紙上,寫在試卷上無效一、單項選擇題(1~10每題1分,11~20每題2分,共30分)在C語言中,用戶能使用的正確標識符是【1】。A)學生B)intC)8stuD)Int2、以下【2】是正確的C語言常量。A)543210LB)05078C)-0x41D)123453、以下程序的運行結(jié)果是什么【3】。main(){intx,a;x=(a=3*5,a*4),a+5;printf(”x=%d,a=%d\n”,x,a);}A)x=20,a=15B)x=60,a=15C)x=20,a=25D)x=25,a=254、下面關于C語言變量的敘述中,錯誤的描述是【4】。A)變量名必須由字母或下劃線開頭B)變量按所定義的類型存放數(shù)據(jù)C)不同基本類型的變量之間不能混合運算D)變量的類型確定了變量的取值范圍5、判斷char型變量c1是否小寫字母的正確表示式為【5】。 A)'a'<=c1<='z' B)(c1>='a')&&(c1<='z') C)(c1>=a)&&(c1<=z) D)('a'<=c1)||('z'>=c1)6、以下程序的運行結(jié)果是【6】。main(){intx=1,y=2,z;z=x>y?++x:++y;printf("%d,%d,%d\n",x,y,z);}A)1,2,2B)1,3,3C)2,3,3D)2,2,37、下列程序段的運行結(jié)果為【7】。chara[]="continue",*p;p=a;while(*p!='i'){printf("%c",*p-32);p++;}A)continue B)CONTINUE C)CONT D)contINUE8、下列對一維數(shù)組a的正確說明語句為【8】。 A)inta(10); B)intn=10,a[n]; C)intn; D)#defineSIZE10 scanf("%d",&n); inta[SIZE]; inta[n];9、以下敘述中不正確的是【9】。A)在不同的函數(shù)中能夠使用相同名字的變量B)程序中有調(diào)用關系的函數(shù)必須放在同一個源文件中C)在一個函數(shù)內(nèi)定義的變量,其變量名只在本函數(shù)范圍內(nèi)有效D)函數(shù)中的形式參數(shù)是局部變量10、以下程序段的運行結(jié)果是【10】。main(){charval[]="01234",*p=val;intsum=0;while(*p){sum+=*p-'0';p++;}printf("%d\n",sum);}A)10 B)11 C)12 D)1311、以下程序的運行結(jié)果是【11】。main(){structst_type{charname[10];floatscore[3];};unionu_type{inti;unsignedcharch;structst_typestudent;}t;printf("%d\n",sizeof(t));}A)25B)12C)3D)2212、下列程序的輸出結(jié)果為【12】。voidfun(int*x){staticinta=5;*x=++a;}main(){intt;fun(&t);fun(&t);printf("%d\n",t);}A)8 B)7 C)10 D)1113、以下程序的輸出結(jié)果是【13】。floatfun(intn){staticfloatf=1.0;f*=n;returnf;}main(){inti;floats;for(i=1;i<=5;i++)s=fun(i);printf("%-8.2f\n",s);}A)120.00B)24.00C)5.00D)720.0014、以下程序經(jīng)過編譯連接后得到的可執(zhí)行文件名為teacher.exe,在dos提示符下輸入【14】,則在屏幕上將顯示MynameisJianhui。#include<stdio.h>main(intargc,char*argv[]){inti;for(i=1;i<argc;i++)printf("%s%c",argv[i],(i<argc-1)?'':'\n');}A)MynameisJianhuirB)teacherMynameisJianhuiC)teacherJianhuirisMynameD)JianhuirisMyname15、以下程序的運行結(jié)果是【15】。#defineA3#defineBA+5#defineCB*B/Amain(){printf("C=%d,",C);printf("3*C=%d\n",3*C);}A)C=8,3*C=24B)C=12,3*C=36C)C=19,3*C=25D)C=11,3*C=2316、執(zhí)行語句printf(”%d\n”,strlen(”abc\x41\n”));輸出結(jié)果是【16】。A)5B)7C)abcAD)abc\x4117、下列程序的輸出結(jié)果為【17】。main(){inta[3][4]={1,2,3,4,5,6,7};int*pa=*a;printf(”%d,%d\n”,*(pa),pa[6]);} A)1,7B)5,6C)2,7D)2,618、若定義inti;則以下循環(huán)語句的循環(huán)執(zhí)行次數(shù)是【18】。for(i=2;i==0;)printf("%d",i--);A)無限次 B)0次 C)1次 D)2次19、若有下列定義:intx[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int(*p)[3]=x;則能夠正確表示數(shù)組元素a[1][2]的表示式為【19】。 A)*(*(p+1)+2) B)*((*p+1)[2]) C)*(*(p+5)) D)*((*p+1)+2)20、以下程序運行結(jié)果是【20】。inti;main(){inti=1,j=2;fun(fun(i,&j),&j);}fun(inta,int*b){staticintm=2;i+=m+a;m=++(*b);printf("%d,%d\n",i,m);return(m);} A)3,3 B)3,3 C)3,3 D)3,3 9,4 6,3 9,3 6,4二、程序分析題(每題4分,共24分)1、執(zhí)行以下程序時,如果從鍵盤輸入0,輸出的結(jié)果是【1】。main(){enumcolor{red,green,blue,white};enumcolorfc;printf("請輸入色號:");scanf("%d",&fc);switch(fc){casered:printf("這是紅旗的顏色!");break;casegreen:printf("這是森林的顏色!");break;caseblue:printf("這是大海的顏色!");break;casewhite:printf("這是云彩的顏色!");break;default:printf("其它的顏色!");}}2、以下程序的運行結(jié)果是【2】。#include<stdio.h>main(){char*s="0123214";intv1=0,v2=0,v3=0;while(*s){switch(*s){default:v3++;case'1':v1++;break;case'2':v2++;}s++;}printf("%d,%d,%d\n",v1,v2,v3);}3、以下程序的運行結(jié)果是【3】。main(){staticcharstr[]="P#tianX#ey#an";voidfun();fun(str);printf("%s\n",str);}voidfun(chars[]){inta,b;for(a=b=0;s[a]!='\0';a++)if(s[a]!='#')s[b++]=s[a];elses[b++]='u';s[b]='\0';}4、以下程序的輸出結(jié)果是。#defineFUN(x,y)(x)>(y)?(x):(y)main(){inta=1,b=2,t;t=10*FUN(a,b);printf("%d\n",t);}5、以下程序的輸出結(jié)果是【5】。main(){intbj();printf("%d\n",bj("abGxyz","abg"));}bj(char*s1,char*s2){while(*s1&&*s2&&s1!=s2){s1++,s2++;}if(*s1-*s2)return1;elsereturn0;}6、以下程序運行時,輸出結(jié)果分別是【6】。structstu{intx;int*y;}*p;intdt[4]={10,20,30,40};structstua[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};main(){p=a;printf("%d,",++p->x);printf("%d,",(++p)->x);printf("%d\n",++(*p->y));}三、程序填空題(每空2分,共20分)請正確填充下面的劃線部分,使其完成所要求的功能。1、以下程序用于求下式的前n項之和S值。(n和x由鍵盤輸入):1x2x3x4x5x6xS=──-──+──-──+──-──+...1!2!3!4!5!6!#include<math.h>main(){inti,n;floats,s1;printf("請輸入n=");scanf("%d",&n);s=0,s1=1;for(i=1;i<=n;i++){【1】;【2】;}printf("Sum=%.0f\n",s);}2、以下程序經(jīng)過簡單選擇排序方法,由小到大輸出各字符串。#include<string.h>main(){char*name[]={"China","Japen","America","Korea","Canada","Germany"};char*temp;inti,j,k,n=6;clrscr();for(i=0;i<【3】;i++){k=i;for(j=i+1;j<n;j++)if(strcmp(name[k],【4】)>0)k=j;if(k!=i){temp=name[i];name[i]=;name[k]=temp;}}for(i=0;i<n;i++)printf("%s\n",name[i]);}3、invert()函數(shù)的功能是將一個字符串str的內(nèi)容倒序存放。例如:字符串str原內(nèi)容為:abcde,函數(shù)調(diào)用后變?yōu)?edcba。voidinvert(charstr[]){inti,j,k;j=【6】;for(i=0;【7】;i++,j--){k=str[i];str[i]=str[j];str[j]=【8】;}}main(){chartest[]="abcde";invert(test);printf("%s\n",test);}4、下列程序的功能是顯示如下形式的數(shù)字:100000210000321000432100543210654321main(){inta[6][6],i,j;for(i=0;i<6;i++){for(j=0;j<6;j++)if(【9】)a[i][j]=0;else【10】;}for(i=0;i<6;i++){for(j=0;j<6;j++)printf("%3d",a[i][j]);printf('\n');}}四、編程題(第三題10分,其余8分,共26分)編寫的程序請寫在另發(fā)的答題白紙上。答題白紙上必須寫上考生姓名、班級和學號。1、編寫一個程序,求3~100之間的全部非素數(shù)之和。2、有15個數(shù)按從小到大順序存放在一個數(shù)組中,當輸入一個數(shù)值時,要求用折半查找法找出該數(shù)是數(shù)組中第幾個元素的值;如果該數(shù)不在數(shù)組中,則顯示相應的提示。defineN15main(){inti,num,a[N];printf("請按從小到大順序輸入15個數(shù)(a[i]>a[i-1])\n");scanf("%d",&a[0]);i=1;while(i<N){scanf("%d\n",&a[i]);if(a[i]>a[i-1])i++;else{printf("請重新輸入a[i]");printf("必須大于%d\n",a[i-1]);}}printf("Inputsearcheddata:");scanf("%d",&num);search(a,num);}search(int*a,intnum){/*請將此處編寫的程序段寫在答題白紙上*/}3、有一個班4個學生,5門課。①求第一門課的平均分;②找出有2門以上課程不及格的學生,輸出她們的學號和全部課程成績和平均成績;③找出平均成績在90分以上或全部課程成績在85分以上的學生。分別編三個函數(shù)實現(xiàn)以上要求。附加題(每空2分,共10分)已知head指向一個帶頭結(jié)點的單向鏈表,鏈表中每個結(jié)點包含一整型數(shù)據(jù)成員(data)和指針成員(next)。寫一個函數(shù)刪除數(shù)據(jù)成員data值為num的結(jié)點。請?zhí)羁?。structnode{intdata;structnode*next;};structnode*del(【1】*head,intnum){structnode*p1,*p2;if(【2】){printf(”\n這是個空表!\n”);gotoend;}p1=head;while(num!=p1->num&&p1->next!=NULL){p2=p1;p1=【3】}if(num==p1->num){if(p1==head)head=【4】;elsep2->next=【5】;printf(”刪除:%d\n”,num);n=n-1;}elseprintf(”%d結(jié)點未找到!\n”,num);end:return(head);}

03級計算機科學與技術(shù)專業(yè)高級語言程序設計期末考試卷(B)答題紙【注意】1、考試時間120分鐘2、考試結(jié)束本試卷連同答題紙須全部上交,供講評和存檔用,不交者按缺考計3、所有答題結(jié)果均應寫在答題紙上,寫在試卷上無效班級學號姓名成績一、單項選擇題(1~10每題1分,11~20每題2分,共30分)【1】【2】【3】【4】【5】【6】【7】【8】【9】【10】【11】【12】【13】【14】【15】【16】【17】【18】【19】【20】二、程序分析題(每題4分,共24分)【1】【2】【3】【4】【5】【6】三、程序填空題(每空2分,共20分)【2】【3】【4】【5】【6】【8】【9】【10】四、編程題(第三題10分,其余8分,共26分)請做在另發(fā)的白紙上(白紙上請寫明姓名、班級和學號)附加題(每空2分,共10分)【1】【2】【3】【4】【5】

03級計算機科學與技術(shù)專業(yè)高級語言程序設計期末考試卷(B)標準答案一、單項選擇題(1~10每題1分,11~20每題2分,共30分)【1】D【2】A【3】B【4】C【5】B【6】B【7】C【8】D【9】B【10】A【11】D【12】B【13】A【14】B【15】C【16】A【17】C【18】B【19】A【20】

溫馨提示

  • 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

提交評論