![大連理工大學(xué)2013年c語言題庫(共12套)_第1頁](http://file4.renrendoc.com/view/a2b411dcc6f9039c3ca402ba922bf0ae/a2b411dcc6f9039c3ca402ba922bf0ae1.gif)
![大連理工大學(xué)2013年c語言題庫(共12套)_第2頁](http://file4.renrendoc.com/view/a2b411dcc6f9039c3ca402ba922bf0ae/a2b411dcc6f9039c3ca402ba922bf0ae2.gif)
![大連理工大學(xué)2013年c語言題庫(共12套)_第3頁](http://file4.renrendoc.com/view/a2b411dcc6f9039c3ca402ba922bf0ae/a2b411dcc6f9039c3ca402ba922bf0ae3.gif)
![大連理工大學(xué)2013年c語言題庫(共12套)_第4頁](http://file4.renrendoc.com/view/a2b411dcc6f9039c3ca402ba922bf0ae/a2b411dcc6f9039c3ca402ba922bf0ae4.gif)
![大連理工大學(xué)2013年c語言題庫(共12套)_第5頁](http://file4.renrendoc.com/view/a2b411dcc6f9039c3ca402ba922bf0ae/a2b411dcc6f9039c3ca402ba922bf0ae5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
【第一套】一、單項(xiàng)選擇1.下列數(shù)據(jù)中,為字符串常量的是()。A、4B、Howdoyoudo.$abc"house".以下所列的C語言常量中,錯(cuò)誤的是()。A、OxFFB、1.2e0.5C、2LD、\72,.以下程序的輸出結(jié)果是()。main(){floatx=3.6;inti;i=(int)x;printf("x=%f/i=%d\n"/xj);}A、x=3.600000J=4B、x=3i=3.600000C、x=3J=3D、x=3.600000,i=3.若k是整型,則以下程序段的執(zhí)行結(jié)果是:()k=-3;if(k<=0)print"####")elseprintf("&&&&");A、####B、有語法錯(cuò)誤,無結(jié)果c、&&&&D、####&&&&.若x=2,y=3則x||y的結(jié)果是()。A、3B、0C、1D、2.針對下列程序段回答問題().for(t=l;t<=100;t++)scanf("%d”,&x);if(x<0)continue;printf("%3d”,t);}A、x>=0時(shí)什么也不輸出B、最多允許輸出100個(gè)非負(fù)整數(shù)C、printf函數(shù)永遠(yuǎn)也不執(zhí)行D、當(dāng)xvO時(shí)整個(gè)循環(huán)結(jié)束.以下程序的執(zhí)行結(jié)果是()。main(){intnum=0;while(num<=2){num++;printf(,'%d/',num);}}A、0,1,2B>1,2,3,C、123,4,D、1,2,.選擇正確的輸入語句()。:(其中:charstring[20];)使得string的內(nèi)容為"Iamstudent".A、scanf(M%sM,string);B、scanf("%c",&string);C、scanf(”%s”,&string);D、gets(string);.對以下說明語句inta[10]={6,7,8,9,10};的正確理解是()。A、將5個(gè)初值依次賦給a⑹至a[10]B、將5個(gè)初值依次賦給a⑼至a⑷C、因?yàn)閿?shù)組長度與初值的個(gè)數(shù)不相同,所以此語句不正確D、將5個(gè)初值依次賦給a⑴至a[5].以下標(biāo)識符中可以作為用戶函數(shù)名的是().A、structB、intC>unionD、go_to.以下敘述錯(cuò)誤的是().A、函數(shù)調(diào)用可以出現(xiàn)在一個(gè)表達(dá)式中B、函數(shù)調(diào)用可以作為一個(gè)函數(shù)的形參C、函數(shù)調(diào)用可以作為一個(gè)函數(shù)的實(shí)參D、函數(shù)允許遞歸調(diào)用.若用數(shù)組名作為函數(shù)的實(shí)參,傳遞給形參的是()。A、數(shù)組第一個(gè)元素的值B、數(shù)組的首地址C、數(shù)組元素的個(gè)數(shù)D、數(shù)組中全部元素的值.在C語言程序中()。A、函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B、函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C、函數(shù)的定義和函數(shù)調(diào)用不可以嵌套D、函數(shù)的定義和函數(shù)調(diào)用均可以嵌套.下列說法中正確的是().A、函數(shù)調(diào)用不占運(yùn)行時(shí)間,只占編譯時(shí)間.B、宏替換不占運(yùn)行時(shí)間,只占編譯時(shí)間.C、有參數(shù)的宏定義,就是函數(shù).D、在定義宏時(shí),宏名與帶參數(shù)的括弧之間可以加空格..若有說明:int*p,m=5,n;以下正確的程序段是()。A、scanf("%d",&n);*p=n;B、p=&n;scanf("%d",*p)C、p=&n;scanf("%d",&p);D、p=&n;scanf("%d",p);.對于下述定義,不正確的敘述是().uniondata{inti;charc;floatf;}a,b;A、變量a的地址和它的各成員地址都是相同的B、可以在定義類型的同時(shí)定義變量a,并對a的任意成員初始化C、變量a所占內(nèi)存的長度等于成員f的長度D、如果有定義語句uniondataa={6};則對變量a的初始化是正確的.有兩個(gè)整型變量dog和cat,若要從磁盤文件把數(shù)據(jù)讀到其中,正確的形式是().A、fscanf(dog,2,l,fp);B、fscanf(fp,"%d%d",&dog,&cat);C、fscanf(dog,cat,2,l,fp);D、fscanf(fp,"%d",&dog,&cat);DBDBCBBDBDBBBBDBB二、判斷.若a和b類型相同,在計(jì)算了賦值表達(dá)式a=b后,b中的值將放入a中,而b中的值不變.charc[6]="abcde";printf("%3s",c)表示輸出的字段的寬度,如果被輸出的數(shù)據(jù)的位數(shù)大于3,按實(shí)際位數(shù)輸出..條件表達(dá)式x?'a':b中,若x=0時(shí),表達(dá)式的值為'a'..在邏輯運(yùn)算符中的運(yùn)算級別由高向低依次為&&->||->!.do-while循環(huán)由do開始,wh"e結(jié)束,循環(huán)體可能一次也不做。.continue語句用于終止循環(huán)體的本次執(zhí)行..若有定義和語句:inta[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[i][2-i];則sum=21..inta[3M4]={{l},{5},{9}};它的作用是將數(shù)組各行第一列的元素賦初值,其余元素值為0。.定義一維數(shù)組的形式為:類型說明數(shù)組名[表達(dá)式],其中表達(dá)式可以是正整型常量表達(dá)式、字符常量表達(dá)式..在C語言中,函數(shù)名代表函數(shù)的入口地址..函數(shù)調(diào)用語句:func(recl,rec2+rec3,(rec4,rec5));中,含有的實(shí)參個(gè)數(shù)是5..數(shù)組名可以作為函數(shù)的實(shí)參和形參..一個(gè)include命令只能指定1個(gè)被包含的文件。.若p為指針變量,a為數(shù)組名,則a-p是合法的表達(dá)式..在程序中定義了一個(gè)結(jié)構(gòu)體類型后,可以多次用它來定義具有該類型的變量。.C語言中,關(guān)閉一個(gè)文件就刪除了這個(gè)文件.對對錯(cuò)錯(cuò)錯(cuò)對對對對對錯(cuò)對對對對錯(cuò)三、填空.已知floati=5.6;inta;寫出語句a=(int)i;執(zhí)行后變量i的值是..設(shè)有intx=ll,則表達(dá)式(x++*1/3)的值是?.若intx=6;則x+=x-=x*x表達(dá)式最后x的值是..設(shè)x=2&&21|5>l,x的值為..連接字符串的函數(shù)是只寫函數(shù)名即可..函數(shù)不可以進(jìn)行嵌套定義,但可以進(jìn)行嵌套..設(shè)有以下結(jié)構(gòu)類型說明和變量定義,則變量b在內(nèi)存所占字節(jié)數(shù)是ostructstud{shortintage;charnum[3];floats[2];doubleave;}b,*p;.若有fp=fopen("al.dat","r+")打開文件語句,這個(gè)文件的數(shù)據(jù)是以的形式存放在內(nèi)存中,該文件的使用方式為讀/。.63-601strcat調(diào)用21ASCII碼或ASCII文本四、程序設(shè)計(jì)/* 【程序設(shè)計(jì)】功能:輸入n個(gè)數(shù),并求出小于平均值的數(shù)的個(gè)數(shù)。*/include"stdio.h"intaverage_num(inta[]Jntn)/*********Begin**********/*********End*********main(){intn,a[100],i,num;voidTestFunc();scanf("%d”,&n);for(i=0;i<n;i++)scanf(“%d”,&a[i]);num=average_num(azn);printf("thenumis:%d\n"znum);TestFunc();}voidTestFunc()(FILE*IN/OUT;intn;inti[10];into;IN=fopen("in.dat'7'r");if(IN==NULL){printf("ReadFileError11);}OUT=fopen("out.dat","w");if(OUT==NULL)(printf("WriteFileError");|for(n=0;n<5;n++)(fscanf(IN/'%d'\&i[n]);)o=average_num(i/5);fprintf(OUTJ%d\n“,o);fclose(IN);fclose(OUT);)【參考代碼】inti,sum=0,k=0;doubleaverage;for(i=0;i<n;i++)sum=sum+a[i];average=sum*1.0/n;for(i=0;i<n;i++)if(average>a[i])k++;return(k);/* 【程序設(shè)計(jì)】功能:從字符串中刪除指定的字符。同一字母的大、小寫按不同字符處理。例如:若程序執(zhí)行時(shí)輸入字符串為:turbocandborlandc++從鍵盤上輸入字符:n,則輸出后變?yōu)椋簍urbocadborladc++,如果輸入的字符在字符串中不存在,則字符串照原樣輸出。 */include"stdio.h"voidfun(chars[],charc)voidTestFunc(){FILE*IN/OUT;chari[200];/*charo[200];*/IN=fopen("in.dat'7'r");if(IN==NULL){printf("ReadFileError");)OUT=fopen("out.dat"/"w");if(OUT==NULL)|printf(nWriteFileError");}fscanf(IN,"%s,i);fun(ijn');fprintf(OUT;,%s"J);fclose(IN);fclose(OUT);main()(staticcharstr[]=nturbocandborlandc++H;charch;printf("原始字符串:%s\n",str);printf("輸入一個(gè)字符:");scanf("%c",&ch);fun(str,ch);printf("str[]=%s\n",str);TestFunc();【參考代碼】char*q=s;for(;*q;q++)if(*q!=c)*(s++)=*q;*s=0;五、程序改錯(cuò)1./* 【程序改錯(cuò)】功能:依次取出字符串中所有數(shù)字字符,形成新的字符串,并取代原字符串。例如:輸入abl2c3d,則輸出123。注意:不得增行或刪行,也不得更改程序的結(jié)構(gòu)! */include"stdio.h"/**********Error**********/voidfun(chars)intij;for(i=0J=0;s[i]!='\0';i++)if(s[i]>='0'&&s[i]<=,9,)/**********ERROR**********/s[j]=s[i];/**********Error**********/sO]="\0";}main()charitem[80];printf("\nEnterastring:gets(item);printf(H\n\nThestringis:\"%s\"\n"Jtem);fun(item);printf("\n\nThestringofchangingis:\"%s\"\n"Jtem);}【學(xué)生答案】voidfun(chars)【參考答案】voidfun(char*s)voidfun(chars[])voidfun(chars[80])【改錯(cuò)2】【學(xué)生答案】sU]=s[i];【參考答案】s[j++]=s[i];{s[j]=s[i];j++;}【改錯(cuò)3】【學(xué)生答案】s[j]="\O";【參考答案】sO]='\0';/* 【程序改錯(cuò)】功能:讀入一個(gè)整數(shù)m(5Sm420),函數(shù)rnd獲得m個(gè)隨機(jī)整數(shù),函數(shù)sortpb將這m個(gè)隨機(jī)整數(shù)從小到大排序。例如:若輸入整數(shù)7,則應(yīng)輸出:3101728323647。 */#include"conio.hinclude"stdio.h"voidsortpb(intn,inta[])inti,j,p;for(j=0;j<n-1;j++){P=j;for(i=j+1;i<n;i++)*********FrrCR*********if(P==j)t=aU];a[j]=a[p];a[p]=t;voiddoublernd()(statict=29,c=217,m=1024,r=0;r=(r*t+c)%m;return((double)r/m);}voidgetarr(intn,int*x)(inti;for(i=1;i<=n;i++,x++)*x=(int)(50*rnd());voidputarr(intn,int*z)(inti;for(i=1;i<=n;i++,z++)(printf("%4d",*z);if(1(i%10))printf("\nM);}printf("\n");main()(intaa[20]zn;printf("\nPleaseenteranintegernumberbetween5and20:");scanf("%dMz&n);getarr(n,aa);printf("\n\nBeforesorting%dnumbers:\n"zn);putarr(n,aa);sortpb(n,aa);printf("\nAftersorting%dnumbersAn",n);putarr(n,aa);}【改錯(cuò)1】【學(xué)生答案】inti,j,p;【參考答案】inti,j,p,t;【改錯(cuò)2】【學(xué)生答案】if(a[p]>a[j])p=i;【參考答案】if(a[p]>a[i])p=i;if(a[i]<a[p])p=i;【改錯(cuò)3】【學(xué)生答案】if(p==j)【參考答案】if(p!=j)
六、程序填空1./* 【程序填空】功能:計(jì)算矩陣a的下三角(包含主對角線)元素之積,矩陣的行、列數(shù)和元素值均由鍵盤輸入。 */#defineM10#include"stdio.h"intmain()inti,j,n,a[M][M];longs=l;scanf("%d",&n);*/for()for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++)/***********fill***********/for(j=0;;j++)/***********Fill***********js=;printf(“%ld\n”,s);return0;|【空1】【學(xué)生答案】for()【參考答案】i=0;i<n;i++i=0;i<n;i=i+l【空2】【學(xué)生答案】for(j=0;;j++)【參考答案】j<=ii>=j(i+j)>(n-l)&&j<n(j+i)>(n-l)&&j<n【空3】【學(xué)生答案】s=;【參考答案】s*a[i]Ula[i]U]*s/* 【程序填空】題H:本程序的功能是從10個(gè)數(shù)中找出其中的最大值,完善程序。*/#indude"stdio.h"main()inta[10]J,*pmax;for(i=0;i<10;i++)scanf("%d",&a[i]);/***********rll***********ipmax=;for(i=l;i<10;i++)if(a[i]>*pmax)pmax=&a[i];/***********Hll***********/printf("%d",);}【學(xué)生答案】pmax=【參考答案】pmax=&a[O]pmax=a【空2】【學(xué)生答案】printf("%d",【參考答案】*pmax【第二套】一、單項(xiàng)選擇.字符串"\\Vefg\'\\"的長度是:().A、3B、11C、7D、5.設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+'a,+i*f值的數(shù)據(jù)類型為()。A、doubleB、不確定C、intD、float.下列語句的結(jié)果是()。main(){intj;j=3;printf(“%d,,++j);printf("%d"J++);}B、4,4C、3,4D、4,3.邏輯表達(dá)式!(2」)&&x||0的值是()A、1B、0C、3D、2.inta=l,b=2zc=3;if(a>b)a=b;if(a>c)a=c;則a的值為()。A、3B、2C、1D、不一定.執(zhí)行語句for(i=l;i++<4;);后變量i的值是()。A、3B、5C、4D、不定.以下正確的描述是().A、只能用continue語句來終止本次循環(huán)B、switch語句中不能出現(xiàn)continue語句C、在循環(huán)中break語句不能獨(dú)立出現(xiàn)D、goto語句只能用于退出多層循環(huán).下面合法的語句定義是().A、chara[]={'071727374,/'5,};B、inta[]="string";C、inta[5]={0,l,2,3,4,5};Dnchara="string";.chara[10];不能將字符串“abc”存儲在數(shù)組中的是()。A>inti;for(i=0;i<3;i++)a[i]=i+97;a[i]=0;B、a="abc";C、strcpyfa/'abc*');D、a[0]=0;strcat(a,"abcM);.在C語言中,一維數(shù)組的定義方式為:類型說明符數(shù)組名()。A、[整型常量]或[整型表達(dá)式]B、[正整型常量表達(dá)式]C、[整型表達(dá)式]D、[常量表達(dá)式].在定義全局變量和局部靜態(tài)變量的同時(shí)賦值,變量的初始化在O時(shí)確定的.A、運(yùn)行B、編輯C、編譯D、調(diào)試.關(guān)于建立函數(shù)的目的,以下正確的說法是()。A、提高程序的可讀性B、減少程序文件所占內(nèi)存C、減少程序的篇幅D、提高程序的執(zhí)行效率.以下函數(shù)調(diào)用語句中實(shí)參的個(gè)數(shù)是()。func((el/e2),(e3/e4ze5));A、3B、5C、語法錯(cuò)誤D、2.設(shè)有宏定義#defineSUB(x,y)(x)*y閏a=3,b=44iJSUB(a++,b++)的值為().A、13B、16C、20D、12.變量p為指針變量,若p=&a,下列寫法不正確的是()。A、*(p++)==a++B、&*p==&aCn(*p)++==a++D、*&a==a.下列程序正確的運(yùn)行結(jié)果為().#include<stdio.h>main()(unionu{char*name;intage;intincome;}s;="WANGLING";s.age=28;s.income=1000;printf("%d\n"zs.age);}A、8B、28C、1000D、不確定.定義my_file為文件型指針變量,使用fopen只讀方式打開一個(gè)已存在的二進(jìn)制文件,以下正確的調(diào)用形式為().A、my_file=fopen("my.dat","r");B、my_file=fopen("my.dat","rb+");C、my_file=fopen("my.dat","rb");D、my_file=fopen("my.dat","r+");CABBCBAABBCADDACC二、判斷.若i=3,則printf("%d",-i++);輸出的值為-4..格式字符%x用來以八進(jìn)制形式輸出整數(shù)..設(shè)u=l,v=2,w=3,則邏輯表達(dá)式u11V-W&&V+W的值為0..已知a=4,b=2,c=3,d=5,表達(dá)式a>b?a:c<d?c:d的值為3..break語句能夠終止當(dāng)前進(jìn)行的多層循環(huán)..break語句不能終止正在進(jìn)行的多層循環(huán)..若有定義和語句:inta[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i<3;i++)sum+=a[i][2-i];則sum=21..二維數(shù)組在內(nèi)存中存貯時(shí),是按行的順序進(jìn)行存儲的。.C語言中引用數(shù)組元素的方括號可以用花括號代替..每次調(diào)用函數(shù)時(shí),都要對靜態(tài)局部變量重新進(jìn)行初始化..在程序中的第二個(gè)函數(shù)之后定義了某全局變量,則該程序的所有函數(shù)均可使用它..在C程序中,函數(shù)既可以嵌套定義,也可以嵌套調(diào)用.在定義宏時(shí),在宏名與帶參數(shù)的括弧之間不應(yīng)加空格..數(shù)組名與指針變量是相互等價(jià)的..兩個(gè)類型相同的結(jié)構(gòu)體變量,可以互相賦值..C語言中,在打開文件時(shí),必須說明文件的使用方式,"r+"用于打開一個(gè)不存在的文件.錯(cuò)錯(cuò)錯(cuò)錯(cuò)錯(cuò)對對對錯(cuò)錯(cuò)錯(cuò)錯(cuò)對錯(cuò)對錯(cuò)三、填空.設(shè)x和y均為int型變量,且x=l,y=2,則表達(dá)式1.0+x/y的值為..在C語言中Jong類型數(shù)據(jù)占個(gè)字節(jié),short類型數(shù)據(jù)占個(gè)字節(jié)..intx=2,y=3,z=4;貝U表達(dá)式x+y>z&&y==z的值為..intx=2,y=3,z=4;則表達(dá)式x+y&&(x=y)的值為..C語言中,二維數(shù)組在內(nèi)存中的存放方式為按優(yōu)先存放..函數(shù)調(diào)用時(shí)的實(shí)參和形參之間的數(shù)據(jù)是單向的傳遞..結(jié)構(gòu)體是不同數(shù)據(jù)類型的數(shù)據(jù)集合,作為數(shù)據(jù)類型,必須先說明結(jié)構(gòu)體再說明結(jié)構(gòu)體變量..調(diào)用fopen函數(shù)打開一文本文件,在"使用方式"這一項(xiàng)中,為輸入而打開需填入.1或1.0或1.401行值類型r+或r四、程序設(shè)計(jì)/* 【程序設(shè)計(jì)】功能:求出二維數(shù)組外圍元素之和,作為函數(shù)值返回。二維數(shù)組的值在主函數(shù)中賦予。 */#defineM4#defineN5#include"stdio.h"intfun(inta[M][N])********Rabin******************End*********main(){inta[M][N]={{L3,5,7,9},{2,4,6,8,10},{2,3,4,5,6},{4,5,6,7,8}};voidTestFuncf);inty;y=fun(a);printf("s=%d\n",y);TestFunc{);voidTestFunc()(FILE*IN/OUT;intilN[M][N]JOUT;inti,j,k;IN=fopen(',14.in,7'r");if(IN==NULL){printf("PleaseVerifyTheCurrerntDir..ItMayBeChanged");)OUT=fopen("14.out","wH);if(OUT==NULL){printf("PleaseVerifyTheCurrentDir..ItMayBeChanged");}for(k=0;k<10;k++){for(i=0;i<M;i++)for(j=0;j<N;j++)fscanf(IN,"%dH,&ilN[i][j]);iOUT=fun(ilN);fprintf(OUT;'%d\n",iOUT);)fclose(IN);fclose(OUT);【參考代碼】ints=0;intij;for(i=0;i<M;i++)s=s+a[i][O]+a[i][N-l];for(j=l;j<N-l;j++)s=s+a[O][j]+a[M-l][j];returns;/* 【程序設(shè)計(jì)】功能:找出一個(gè)大于給定整數(shù)且緊隨這個(gè)整數(shù)的素?cái)?shù),并作為函數(shù)值返回。include"stdio.h"#include"conio.h"intfun(intn)/??????***gggjp******????I/**********End*********31t/voidTestFunc()FILE*IN/OUT;ints;intt;into;IN=fopen(,,in.dat,,/"r");if(IN==NULL)printf(HReadFileError");OUT=fopen("out.dat'7,w");jf(OUT==NULL)printf("WriteFileError");}for(s=l;s<=5;s++)fscanf(INJ%cT,&t);o=fun(t);fprintf(OUT/'%d\n,'/o);}fclose(IN);fclose(OUT);}main()|intm;printf("Enterm:");scanf("%d”,&m);printf("\nTheresultis%d\n,,/fun(m));TestFunc();)【參考代碼】inti,k;for(i=n+l;;i++){for(k=2;k<i;k++)if(i%k==O)break;if(k==i)return(i);五、程序改錯(cuò)/* 【程序改錯(cuò)】功能:一個(gè)5位數(shù),判斷它是不是回文數(shù)。即12321是回文數(shù),個(gè)位與萬位相同,十位與千位相同。include"stdio.h"main()/**********ERR0R**********/longge,shi,qian;wan,x;scanf(H%ldM,&x);/**********ERROR**********Iwan=x%10000;qian=x%10000/1000;shi=x%100/10;ge=x%10;/**********Error**********/if(ge==wan11shi==qian)printf(Hthisnumberisahuiwen\n");elseprintf("thisnumberisnotahuiwen\nH);}【改錯(cuò)1】【學(xué)生答案】longge,shi,qian;wan,x;【參考答案】longge,shi,qian,wan,x;【改錯(cuò)2】【學(xué)生答案】wan=x%10000;【參考答案】wan=x/10000;【改錯(cuò)3】【學(xué)生答案】if(ge==wan||shi==qian)【參考答案】if(ge==wan&&shi==qian)if(shi==qian&&ge==wan)/*【程序改錯(cuò)】功能:用下面的和式求圓周率的近似值。直到最后一項(xiàng)的絕對值小于等于0.0001on/4=1-1/3+1/5-1/7....--- - -Vinclude"stdio.h"/**********ERROR**********/include"math"voidfun()floats=O,t=lJ=l;/**********Error**********/intp=l;/**********ERROR**********/while(fabs(t)<=le-4)s=s+t;P=-P;i=i+2;t=p/i;|/**********ERROR**********/printf("pi=%d\n",s*4);main()(fun();【改錯(cuò)1】【學(xué)生答案】#include"math"【參考答案】include"math.h"#include<math.h>【改錯(cuò)2】【學(xué)生答案】intp=l;【參考答案】floatp=l;floatp=1.0;doublep=l;double1.0;【改錯(cuò)3】【學(xué)生答案】while(fabs(t)<=le-4)【參考答案】while(fabs(t)>le-4)while(0.0001<fabs(t))while(le-4<fabs(t))while(fabs(t)>0.0001)【改錯(cuò)4】【學(xué)生答案】printf("pi=%d\n",s*4);【參考答案】printf("pi=%f\n",s*4);printf("pi=%lf\n",s*4);六、程序填空/* 【程序填空】
功能:計(jì)算并輸出500以內(nèi)最大的10個(gè)能被13或17整除的自然數(shù)之和。*/includeHstdio.h"/***********fill***********iintfun(intm=0,mc=0zj,n;/***********Fill***********/while(k>=2&&)/***********FlLL***********Iif(k%13==011if(k%13==011.)m=m+k;mc++;}k-;|/***********F||_l***********/main()printf("%d\n,,/fun(500));【空1】【學(xué)生答案】intfun()【參考答案】intk【空2】【學(xué)生答案】while(k>=2&&:【參考答案】me<1010>meme<=99>=me【空3】【學(xué)生答案】if(k%13==011)【參考答案】k%17==0!(k%17)k/17*17==k【空4】【學(xué)生答案】【參考答案】returnmreturn(m)/* 【程序填空】功能:以下程序中,函數(shù)fun的功能是計(jì)算x八2.2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:yl=(x+8)A2-2(x+8)+6y2=(sin(x))A2-2sin(x)+6請?zhí)羁铡??/#include<stdio.h>#include<math.h>doublefun(doublex)return(x*x-2*x+6);}main(){/***********F||_l***********/doublex,;printf("Enterx:");scanf("%ir,&x);/***********FlLL***********/yl=fun();/***********Hll***********/y2=fun();printf("yl=%lf,y2=%lf\n",yl,y2);}【空1】【學(xué)生答案】doublex,;【參考答案】yi,y2y2,yi【空2】【學(xué)生答案】yl=fun();【參考答案】(x+8)(8+x)x+88+x【空3】【學(xué)生答案】y2=fun();【參考答案】sin(x)【第三套】一、單項(xiàng)選擇1.以下程序段char?alp[]={"ABC";'DEF","GHI"};intj;puts(alp[l]);的輸出結(jié)果是()。A、DB、AC、BD、DEF2.下列表達(dá)式中,可作為C合法表達(dá)式的是()。A、3.0%2B、3=2=1=0C、[3,2,1,0]D、(3,2,1,0).下面程序的正確輸出結(jié)果是().(規(guī)定用U及示空格)main(){floatx=5.783/y=-10.2345;printf("x=%-8.2f,y=%-8.2f\n",x,y);}A、x=5.78UUUU/y=-10.23UUB、x=5.78zy=-10.23C、5.78,-10.23D、x=UUUU5.78zy=UU-10.23.當(dāng)x為偶數(shù)或奇數(shù)時(shí)(0除外),其值都為0的表達(dá)式是:()A、(x/2*2-x)==0B、x%2==0C>!x!=0D、!(x%2).下列運(yùn)算符優(yōu)先級最低的是().A、=B、+C、!D、&&.設(shè)有如下程序段:intk=10;while(k==O)則下述說明中正確的是().A、循環(huán)體一次也不執(zhí)行B、循環(huán)體執(zhí)行一次C、死循環(huán)D、循環(huán)體執(zhí)行10次.從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是()。A、continue語句B、空語句C、break語句D、return語句.以下對一維整型數(shù)組a的正確說明是()。A、inta(10);、intn;scanf(”%cT,&n);inta[n];C、intn=10,a[n];D、#defineSIZE10(換行)inta[SIZE];.以下定義語句中,錯(cuò)誤的是()。A、intn=5za[n];B、inta□二{1,2};C、chars[10]="testn;D、char*a[3];.下面敘述中不正確的是().A、可以對字符型數(shù)組進(jìn)行整體輸入和輸出.B、不可以對浮點(diǎn)型數(shù)組進(jìn)行整體輸入和輸出.C、可以對整型數(shù)組進(jìn)行整體輸入和輸出.D、字符型數(shù)組可以存放字符串..函數(shù)定義時(shí)的參數(shù)為形參,調(diào)用函數(shù)時(shí)所用的參數(shù)為實(shí)參,則下列描述正確的是().A、實(shí)參與形參是雙向傳遞B、形參可以是表達(dá)式C、形參和實(shí)參可以同名D、實(shí)參類型一定要在調(diào)用時(shí)指定.以下錯(cuò)誤的描述是:函數(shù)調(diào)用可以()。A、出現(xiàn)在執(zhí)行語句中B、做為一個(gè)函數(shù)的實(shí)參C、出現(xiàn)在一個(gè)表達(dá)式中D、做為一個(gè)函數(shù)的形參.以下不正確的說法是:C語言規(guī)定()。A、實(shí)參可以是常量,變量或表達(dá)式B、實(shí)參可以為任何類型C、形參可以是常量,變量或表達(dá)式D、形參應(yīng)與其對應(yīng)的實(shí)參類型一致.下列形式,不屬于編譯預(yù)處理命令的是().A、#ifdefMB、#undefMC、#if(M>1)D、while(M>1).下面判斷正確的是()。A、charc[4]=="abc”,d[4]="abc”;等價(jià)于charc[4]=d[4]="abc";B、charstr[10]={"china"};^^Tcharstr[10];str[]={"china"};C、char*a="china”;等價(jià)于char*a;*a="china";D、char*s="china";等價(jià)于char*s;s="china";.若有以下結(jié)構(gòu)體定義:structexample{intx;inty;}v2;則()是正確的引用或定義.A、example.x=10;B、structv2;v2.x=10;C、examplev2;v2.x=10;D、structexamplev2={103};.若fp已正確定義并指向某個(gè)文件,當(dāng)未遇到該文件結(jié)束標(biāo)志時(shí)函數(shù)feof(fp)的值為()oA、-1B、1C、一個(gè)非。值D、0DDACAACDACCDCDDDD二、判斷.如果有一個(gè)字符串,其中第十個(gè)字符為'\n,,則此字符串的有效字符為9個(gè).格式字符%。用來以十六進(jìn)制形式輸出整數(shù).已知a=3,b=4,c=5,則邏輯表達(dá)式!(a>b)&&!c||l的值為1..已知x=2,y=2,執(zhí)行分支語句if(x==y)y=l;elsey=-l;后,y=-l..continue語句對于while和do-while循環(huán)來說,意味著轉(zhuǎn)去計(jì)算While表達(dá)式..在do-while循環(huán)中,根據(jù)情況可以省略while..對于字符數(shù)為n個(gè)的字符串,其占用的內(nèi)存為n+1個(gè)字節(jié)空間..puts函數(shù)用來輸出一個(gè)字符..引用數(shù)組元素時(shí),下標(biāo)可以是整型表達(dá)式或整型常量..函數(shù)調(diào)用結(jié)束后,靜態(tài)局部變量所占用的空間被釋放..在一個(gè)函數(shù)中定義的靜態(tài)局部變量可以被另一個(gè)函數(shù)調(diào)用..當(dāng)全局變量與局部變量同名時(shí),在局部變量的作用域范圍之內(nèi),全局變量起作用..計(jì)算機(jī)編譯系統(tǒng)對宏定義在編譯時(shí)進(jìn)行語法檢查..若定義intarray⑸,*p;則賦值語句p=array;是正確的..共同體變量所占的內(nèi)存長度等于最長的成員的長度。.C語言中,打開一個(gè)文件就意味著產(chǎn)生了一個(gè)文件.錯(cuò)錯(cuò)對錯(cuò)對錯(cuò)對錯(cuò)對錯(cuò)錯(cuò)錯(cuò)錯(cuò)對對錯(cuò)三、填空.設(shè)x的值為15,n的值為2,則表達(dá)式x%=(n+=3)運(yùn)算后x的值是..已知a=-13,b=6,a%b的十進(jìn)制數(shù)值為..已知a=12,寫出表達(dá)式0<a&&a<2的值是..已知i=5,寫出語句a=(i>5)?0:l;執(zhí)行后整型變量a的值是..C語言中,數(shù)組名是一個(gè)不可變的常量,不能耐它進(jìn)行加減和賦值運(yùn)算..C語言中一個(gè)函數(shù)由函數(shù)首部和兩部分組成..設(shè)有以下共用體類型說明和變量定義,則變量c在內(nèi)存所占字節(jié)數(shù)是。unionstud{shortintnum;charname[10];floatscore[5];doubleave;}c;.在C語言中,關(guān)閉文件即是文件指針不再指向該.0-101指針或地址函數(shù)體20文件四、程序設(shè)計(jì)/* 【程序設(shè)計(jì)】功能:計(jì)算并輸出給定整數(shù)n的所有因子之和(不包括1與自身)。注意:n的值不大于1000?例如:n的值為855時(shí),應(yīng)輸出704。*/#indude"stdio.h"intfun(intn)********Raain*********/**********End**********I}voidTestFunc()(FILE*IN,*OUT;intilNJOUTi;IN=fopen("in.dat","r");if(IN==NULL)(printf("PleaseVerifyTheCurrerntDin.ltMayBeChanged");}OUT=fopen("out.dat","w");if(OUT==NULL)(printff'PleaseVerifyTheCurrentDir..ItMayBeChanged");|for(i=0;i<5;i++)(fscanf(IN,"%d",&ilN);iOUT=fun(ilN);fprintf(OUT,"%d\n",iOUT);|fclose(IN);fclose(OUT);|main()(printf("s=%d\n",fun(855));TestFunc();【參考代碼】
ints=OJ;for(i=2;i<n;i++)if(n%i==O)s=s+i;returns;/* 【程序設(shè)計(jì)】功能:刪去一維數(shù)組中所有重復(fù)的數(shù),只保留不同的數(shù)。數(shù)組中的數(shù)已按由小到大的順序排列,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個(gè)數(shù)。例如:一維數(shù)組中的數(shù)據(jù)是:2223445666677899101010。刪除后,數(shù)組中的內(nèi)容應(yīng)該是:2345678910。注意:請勿改動(dòng)主函數(shù)main和其它函數(shù)中的任何內(nèi)容。#include"stdio.h"#defineN80intfun(inta[]Jntn)(/*********Raajn******************End**********/main()(voidTestFunc();inta[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,10},i,n=20;printff'Theoriginaldata:\n");for(i=0;i<n;i++)printf(H%3d"/a[i]);n=fun(a,n);printf("\n\nThedataafterdeleted:\n");for(i=0;i<n;i++)printf("%3d”,a[i]);printf("\n\n");TestFunc();voidTestFunc()(FILE*IN/OUT;inta[N];intn;inti;IN=fopen("in.dat",',r");if(IN==NULL)(printf(HReadFileError");}OUT=fopen("out.dat,|/"w");if(OUT==NULL)(printf("WriteFileError");}fscanf(INJ%d,&n);for(i=0;i<n;i++)fscanf(IN/"%d,'/&a[i]);n=fun(a,n);for(i=0;i<n;i++)fprintf(OUTJ%3d,a[i]);fclose(IN);fclose(OUT);【參考代碼】inti,j=l,k=a[O];for(i=l;i<n;i++)if(k!=a[i]){a[j++]=a[i];k=a[i];}a[j]=O;returnj;五、程序改錯(cuò)/* 【程序改錯(cuò)】函數(shù)fun的功能是:求1到20的階乘的和。 */include"stdio.h"main()intnJ;floats=0.0,t=1.0;for(n=l;n<=20;n++)/**********Error**********/S=l;for(j=l;j<=n;j++)/**********ERROR**********/t=t*n;/**********Error**********/s+t=s;printf("jiecheng=%f\n"/s);【改錯(cuò)1】【學(xué)生答案】S=l;【參考答案】t=l;t=1.0;【改錯(cuò)2】【學(xué)生答案】t=t*n;【參考答案】t=t*j;t*=j;t=j*t;【改錯(cuò)3】【學(xué)生答案】s+t=s;【參考答案】S=S+1;s+=t;s=t+s;/* 【程序改錯(cuò)】功能:實(shí)現(xiàn)兩個(gè)字符串的連接。例如:輸入dfdfqe和12345時(shí),則輸出dfdfqel2345.*/#include"stdio.h"main()charsl[80Ls2[80];voidscat(charsl[]zchars2[]);gets(sl);gets(s2);scat(slzs2);puts(sl);}voidscat(charsl[]zchars2[])inti=0J=0;/**********ERROR**********/while(sl[i]=='\0')i++;/**********ERROR**********/while(s2[j]=='\0')/**********ERROR**********Is2[j]=sl[i];i++;j++;/**********ERROR*********s2Ul='\O';}【改錯(cuò)1】【學(xué)生答案】while(sl[i]=='\0')i++;【參考答案】while(sl[i]!='\O')i++;while(sl[i])i++;while(sl[i]!=NULL)i++;while(sl[i]!=O)i++;【改錯(cuò)2】【學(xué)生答案】while(s2[i]=='\0')【參考答案】while(s2D]!='\0')while(s2[j])while(s2[j]!=NULL)while(s2[j]!=0)【改錯(cuò)3】【學(xué)生答案】s2[j]=sl[i];【參考答案】sl[i]=s2[j];【改錯(cuò)4】【學(xué)生答案】s2U]='\O';【參考答案】sl[i]='\O';sl[i]=NULL;*(sl+i)='\O';sl[i]=O;六、程序填空1./* 【程序填空】功能:打印以下圖形。********** */include"stdio.h"main()chara[5][9]={" ”};intij;for(i=0;i<5;i++)/***********FlLL***********/for(j=i;;j++)a[i]U]='*';/***********F||_L***********Ifor(.for(j=0;j<9;j++)/***********F|ll***********/);**********【空1】【學(xué)生答案】for(j=i;;j++)【參考答案】j<i+5i+5>jj<=i+4i+4>jj<5+i【空2】【學(xué)生答案】for( :i<5:i++)【參考答案】i=0【空3】【學(xué)生答案】printf("%c",);【參考答案】a[i]01【空4】【學(xué)生答案】【參考答案】printf("\n")
/* 【程序填空】功能:計(jì)算n門課程的平均分。例如:若有5門課程的成績是:90.5,72,80,61.5,55則函數(shù)的值為:71.80?*/#include<stdio.h>floatfun(float*ajntn)inti;floatave=0.0;/***********F||_L***********/for(i=0;;i++)ave=ave+a[i];ave=ave/n;/***********fill***********iintmain()floatscore[30]={90.5,72,80,61.5,55},aver;/***********F||_L***********/aver=fun(,5);printf("\nAveragescoreis:%5.2f\n"zaver);return0;}【空1】【學(xué)生答案】for(i=0;;i++)【參考答案】i<nn>i【空2】【學(xué)生答案】【參考答案】returnave;【空3】【學(xué)生答案】aver=fun(,5);【參考答案】score【第四套】一單選1sizeof(float)是()。A、一個(gè)浮點(diǎn)表達(dá)式B、一個(gè)不合法的表達(dá)式C、運(yùn)算結(jié)果是一個(gè)整型表達(dá)式。D、一種函數(shù)調(diào)用2下列數(shù)據(jù)中屬于”字符串常量“的是()。A、4B、"ABCC、ABCD、'ABC,3用下面的scanf函數(shù)輸入數(shù)據(jù),使得i=10,k=15選擇正確的鍵盤輸入方法().(用”[CR『表示回車,U表示空格)main(){inti,k;scanf("i=%d/k=%d"/&i/&k);}A、i=10[CR]k=15[CR]B、i=10,k=15[CR]C、10U15[CR]D、10,15[CR]4邏輯表達(dá)式3<2||-l&&4>3-!0的值為:()A、1B、3C、0D、25下列運(yùn)算符中是C語言關(guān)系運(yùn)算符的是()。A、&B、?C、!=D、!6語句while(!E);中的表達(dá)式IE等價(jià)于()<)A、E==lB,E!=0C、E!=lD、E==07以下正確的描述是().A、只能在循環(huán)體內(nèi)和switch語句內(nèi)使用break語句B、continue語句的作用是終止整個(gè)循環(huán)的執(zhí)行C、從多層嵌套的外層循環(huán)中退出時(shí),只能使用goto語句D、在循環(huán)體內(nèi)使用break和continue語句的作用相同8下面各語句中,能正確進(jìn)行賦字符串操作的語句是().A、charsl[5][]={"ABCDE"};B、chars2[6]={'A','B','C','D','E'};C、charst[][]={"ABCDE"};D、chars[5]={,A',,B','C';D7E,);9若有說明:inta[3][4]={0};則下面正確的敘述是()。A、數(shù)組a中每個(gè)元素均可得到初值0B、只有元素a⑼[0]可得到初值0C、數(shù)組a中各元素都可得到初值,但其值不一定為0D、此說明語句不正確10若有說明inta⑶⑷;則a數(shù)組元素的非法引用是().A、a[l][3]B、a[0][4]C、a[0][2*l]D、a[4-2][0]11執(zhí)行下面程序后,輸出結(jié)果是()。main(){inta,b,c;a=45zb=27zc=0;c=max(a/b);printf("%d\n”,c);}intmax(intxjnty){intz;if(x>y)z=x;elsez=y;return(z);}A、72B、18C、27D、4512以下正確的描述是:在C語言程序中()。A、函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B、函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C、函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套D、函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套13在C語言的函數(shù)中,下列正確的說法是()。A、形參可以是常量和變量B、可以有也可以沒有形參C、數(shù)組名不能作形參D、必須有形參14設(shè)有宏定義#definePI3.14和#(16件仗S(r)Pl*r*c則S(2)的值為().A、6.28B、12.56C、3.14D、9.4215inta[10]={123,456,7,8};int*p;p=&a[5];p卜3]的值是()oA、4B、2C、不一定D、316若有以下程序段,則使用錯(cuò)誤的選項(xiàng)是().structstudent(intnum;intage;};structstudentstu[3]={{1001/20}/{1002,19}/{1004/20}};main();(structstudent*p;p=stu;}A、(*p).numB、(p++)->numC、p=&stu.ageD、p++CBBACDABABDBBBDC二判斷1rtdefine和printf都不是C語句。2格式字符%x用來以十六進(jìn)制形式輸出整數(shù).3語句if(a>b)printf("%d",a);elseprintf("%d",b);可以用條件表達(dá)式a>b?a:b取代.4邏輯表達(dá)式-5&&!8的值為1.5循環(huán)結(jié)構(gòu)中的continue語句是使整個(gè)循環(huán)終止執(zhí)行6for循環(huán)語句不能用于循環(huán)次數(shù)未知的情況下.7引用數(shù)組元素時(shí),數(shù)組元素下標(biāo)必須是整型常量.8數(shù)組的首地址一定是第一個(gè)數(shù)組元素的地址.9數(shù)組整體不參加數(shù)據(jù)處理(即不參加各種運(yùn)算),參加數(shù)據(jù)處理的只能是數(shù)組的元素.10數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,實(shí)際上傳遞給形參的是數(shù)組全部元素的值.11在主函數(shù)中,必須要對被調(diào)用函數(shù)進(jìn)行類型說明,否則在編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤.12在一個(gè)函數(shù)中定義的靜態(tài)局部變量不能被另外一個(gè)函數(shù)所調(diào)用.13計(jì)算機(jī)編譯系統(tǒng)對宏定義在編譯時(shí)進(jìn)行語法檢查.14指向某一變量的指針,就是該變量的內(nèi)存地址.15對于不同類型的數(shù)據(jù),若想合成一個(gè)有機(jī)的整體,可以引用結(jié)構(gòu)體進(jìn)行定義。16在打開文件時(shí),必須說明文件的使用方式,"r"表示以只讀方式打開一個(gè)文件.對對錯(cuò)錯(cuò)錯(cuò)錯(cuò)錯(cuò)對對錯(cuò)錯(cuò)時(shí)錯(cuò)對對對三填空intx=2;z=x++-l;則x的值為.設(shè)x=2.5,a=7,y=4.7,算術(shù)表達(dá)式x+a%3*(int)(x+y)%2/4的值為.設(shè)x=62,表達(dá)式x>=60&&x<70||x==l的值為.c語言表達(dá)式5>2>7>8的值是.5字符串比較的庫函數(shù)是(只寫函數(shù)名即可.6從函數(shù)的形式上看,函數(shù)分為無參函數(shù)和兩種類型.7設(shè)有以下共用體類型說明和變量定義,在TC編譯環(huán)境下,變量a在內(nèi)存所占字節(jié)數(shù)是unionstud{charnum[6];floats[4];doubleave;}a,*p;8在C語言中,根據(jù)要處理的文件存儲的編碼形式,可以把文件分為ASCII文件和文件.32.510strcmp有參函數(shù)16二進(jìn)制四程序設(shè)計(jì)【程序設(shè)計(jì)】功能:用函數(shù)求N個(gè)[10,60]上的整數(shù)中能被5整除的最大的數(shù),如存在則返回這個(gè)最大值,如果不存在則返回0o*/#include"stdio.h"include"stdlib.h"#defineN30intfind(intarr[]Jntn)intm=0;/*********Begjn**********//**********End??*?*????*Ireturn(m);|main()inta[N]Jzk;voidTestFunc();for(i=0;i<N;i++)a[i]=rand()%50+10;for(i=0;i<N;i++)printf("%5d",a[i]);if((i+l)%5==0)printf(M\n");}k=find(a,N);if(k==O)printff'NOFOUND\n");elseprintff'themaxis:%d\n",k);TestFunc();voidTestFunc(){FILE*IN/OUT;intn;inti[5];into;IN=fopen("in.dat'7,r");if(IN==NULL){printf("ReadFileError");}OUT=fopen("out.dat","w");if(OUT==NULL)(printf("WriteFileError");}for(n=0;n<5;n++)(fscanf(INJ%cf,&i[n]);}o=find(i,5);fprintf(OUTJ%d\n",o);fclose(IN);fclose(OUT);【參考代碼】inti;for(i=0;i<n;i++)if(arr[i]%5==0&&arr[i]>m)m=arr[i];2/* 【程序設(shè)計(jì)】功能:根據(jù)整型參數(shù)n,計(jì)算如圖公式的值。*/include"stdio.h"include"conio.h"doublefun(intn)/*********Begjn**********/main()(intm;voidTestFunc();printf("Enterm:");scanf("%d”,&m);printf("\nTheresultis%f\n"zfun(m));TestFunc();}voidTestFunc()(FILE*IN/OUT;ints;intt;doubleo;IN=fopen(,,in.dat"/"r");if(IN==NULL)(printf("ReadFileError");}OUT=fopen("out.dat",',wH);if(OUT==NULL)printf("WriteFileError");for(s=l;s<=5;s++)(fscanf(IN,"%d",&t);o=fun(t);fprintf(OUTJ%f\n,o);}fclose(IN);fclose(OUT);【參考代碼】doublea=l;inti;for(i=l;i<n;i++)a=1.0/(l+a);returna;五程序改錯(cuò)1/* 【程序改錯(cuò)】功能:實(shí)現(xiàn)3行3列矩陣的轉(zhuǎn)置,即行列互換。 */include"stdio.h"voidfun(inta[3][3]Jntn)(intijt;for(i=0;i<n;i++)for(j=0;j<n;j++)/**********ERROR**********/scanf(“%d”,a[i][j]);for(i=0;i<n;i++)for(j=0;j<n;j++)printf(”%4d“,a[i][j]);printf("\n");}for(i=0;i<n;i++)/**********Error**********/for(j=0;j<n;j++)/**********ERROR**********/a[i][j]=t;a[i]Ul=aUl[il;/**********Error**********/t=aG][i];}for(i=0;i<n;i++)for(j=0;j<n;j++)printf("%4d",a[i][j]);printf("\n");}main()intb[3][3];fun(b,3);|【改錯(cuò)1】【參考答案】scanf("%d",&a[i][j]);scanf("%d",(*(a+i)+j));【改錯(cuò)2】【參考答案】for(j=0;j<i;j++)for(j=0;i>j;j++)for(j=0;j<=i;j++)for{j=0;i>=j;j++)for(j=i+l;j<n;j++)for(j=i;j<n;j++)for(j=0;j<=i-l;j++)for(j=0;i-l>=j;j++)for(j=i+l;j<=n-l;j++)for(j=i;j<=n-i;j++)【改錯(cuò)3】【參考答案】t=a[i][j];【改錯(cuò)4】【參考答案】aUJ[i]=t;2/* 【程序改錯(cuò)】功能:從鍵盤輸入10個(gè)字符,統(tǒng)計(jì)其中數(shù)字字符的個(gè)數(shù)。 */#include<stdio.h>intmain()intizsum=O;charc;for(i=ll;i>=2;i-)/**********ERROR****m/c=gets();if(c<'O'||c>9)/**********Error**********ibreak;++sum;printf("sum=%d,,/sum);return0;【改錯(cuò)1】【參考答案】c=getchar();【改錯(cuò)2】【參考答案】continue;六程序填空1/* 【程序填空】功能:從鍵盤上輸入2名學(xué)生4門課成績,求每個(gè)學(xué)生的平均成績,并統(tǒng)計(jì)不及格門次。 */#include<stdio.h>include,'math.h"intmain()intijn=0;floatx,sum,avg;for(i=l;i<=2;i++)/***********F||_L***********/for(j=l;j<=4;j++)scanf("%f",&x);if(x<60)n++;/***********fill***********I}avg=sum/4.0;printf("\navgofNO.%dis%5.2f",i/avg);)printf("\n%d,,/n);return0;【空1】【參考答案】sum=0【空2】【參考答案】sum=sum+xsum+=x2/* 【程序填空】功能:設(shè)數(shù)組a中的元素均為正整數(shù),以下程序是求a中偶數(shù)的個(gè)數(shù)和偶數(shù)的平均值。 */#include<stdio.h>intmain()(inta[10]={l,2,3,4,5,6,7,8,9,10};intk,s,i;floatave;for(k=s=i=0;i<10;i++)
*/*//***********fill***********is+=;k++;}if(k!=O)(ave=s/k;printf("%d,%f\n",k,ave);}return0;}【空1】【參考答案】continue【空2】【參考答案】a[i]【第四套】一單項(xiàng)選擇1先用語句定義字符型變量C,然后要將字符a賦給c,則下列語句中正確的是()。A、C='97'B、c='a';C、c="97";D、c=na";2已定義ch為字符型變量,以下賦值語句中錯(cuò)誤的是()。A、ch='\';B、ch='a';C、ch='\xaa*;D、ch=62+3;3已定義兩個(gè)字符數(shù)組a,b,則以下正確的輸入格式是()。A、scanf("%s%s"/&a,&b);B、scanf(,'%s%s"/a,b);C、get(a,b);D、gets("a"),gets("b");4以下不正確的if語句形式是()。A、if(x<y){x++;y++;}B、if(x!=y)scanf("%d",&x)elsescanf("%d",&y);C、if(x>y&&x!=y);D、if(x==y)x+=y;5執(zhí)行下面程序段后,ch的值是().charch=,a,;ch=(ch>='a'&&ch<=,z')?(ch-32):ch;A、aB、AC、zD、Z6語句while(!E);中的表達(dá)式!E等價(jià)于()<?A^E==lB、E!=0C、E!=lD、E==07針對for循環(huán)語句,for(表達(dá)式1;表達(dá)式2;表達(dá)式3),下列說法正確的是().A、break語句可以一次性跳出多層嵌套循環(huán)B、break語句只能跳出最內(nèi)層循環(huán)C、continue語句可以一次性跳出多層嵌套循環(huán)D、continue語句可以跳出最內(nèi)層循環(huán)8程序main(){chars[10];§=七8€1"何用("%§\|1"戶);}的運(yùn)行結(jié)果(以FU代表空格)是().A、輸出abedB、輸出abcdUUUUUC、編譯不通過D>輸出a9若chara[10];已正確定義,以下語句中不能從鍵盤上給a數(shù)組的所有元素輸入值的語句是()。A、for(i=0;i<10;i++)a[i]=getchar();B、scanf(”%s”,a);C>gets(a);D、a=getchar();IOC語言中函數(shù)調(diào)用的方式有()。A、函數(shù)只可以作為語句調(diào)用。B、函數(shù)只可以作為函數(shù)表達(dá)式調(diào)用C、函數(shù)調(diào)用只可以作為語句或函數(shù)表達(dá)式調(diào)用。D、函數(shù)調(diào)用可以作為語句調(diào)用,可以作為函數(shù)表達(dá)式調(diào)用,也可以作為函數(shù)參數(shù)調(diào)用。11函數(shù)的形式參數(shù)系統(tǒng)默認(rèn)存儲類型說明是()。A、staticB、externC>registerD、auto12設(shè)有宏定義#defineSUB(x,y)(x)*y,且a=3,b=4,則SUB(a++,b++)的值為().A、13B、16C、20D、1213以下程序段執(zhí)行后輸出的結(jié)果是().charstr[]="ABCD",*p=str;printf("%d\n",*(p+4));A、字符U的地址B、0C、不確定的值D、6814使用共用體變量,不可以()。A、同時(shí)訪問所有成員B、進(jìn)行動(dòng)態(tài)管理C、節(jié)省存儲空間D、簡化程序設(shè)計(jì)15若要用fopen函數(shù)打開一個(gè)新的二進(jìn)制文件,該文件要既能讀也能寫,則文件方式字符串應(yīng)是()。A,"rb+"B、"ab++"C,"ab"D、"wb+"BABBBDBCDDDDBAD二判斷1一個(gè)C程序只能由一個(gè)主函數(shù)組成。2在C程序中,逗號運(yùn)算符的優(yōu)先級最低。3c語言printf函數(shù)的格式控制串中可以設(shè)置需要的普通字符,輸出時(shí)會(huì)原樣輸出。4雙精度型數(shù)據(jù)輸入應(yīng)該選用If格式。5若floatx=2.0,y=1,0;,則條件表達(dá)式x>y?l:1.5的值為1.6邏輯表達(dá)式4>2&a1||5<3-!0的值為1.7邏輯表達(dá)式-5&&!8的值為1.8在do-while循環(huán)中,任何情況下都不能省略while.9break語句不能終止正在進(jìn)行的多層循環(huán).10在do-while循環(huán)中,根據(jù)情況可以省略while.11若有語句:chara[]="string";則a⑹的值為W;12二維數(shù)組在內(nèi)存中存貯時(shí),是按行的順序進(jìn)行存儲的。13給數(shù)組賦初值時(shí),初值的個(gè)數(shù)一定不小于所定義的元素的個(gè)數(shù).14當(dāng)全局變量與局部變量同名時(shí),在局部變量的作用域范圍之內(nèi),全局變量起作用.15當(dāng)函數(shù)的類型與return語句后表達(dá)式的值的類型不一致時(shí),函數(shù)返回值的類型由return語句后表達(dá)式值的類型決定.16在C語言中,主函數(shù)可以調(diào)用其它函數(shù),同時(shí),其它函數(shù)也可以調(diào)用主函數(shù).17宏定義不是C語句,不必在行末加分號.18若定義intarray[5],*p;則賦值語句p=&array;是正確的.19在定義結(jié)構(gòu)體變量時(shí)不允許對它賦初值.20c語言中,在打開文件時(shí),必須說明文件的使用方式,"w"用于文件的讀寫.錯(cuò)時(shí)對對錯(cuò)對錯(cuò)對對錯(cuò)時(shí)對錯(cuò)錯(cuò)錯(cuò)錯(cuò)時(shí)錯(cuò)錯(cuò)錯(cuò)三填空1已知x=3,y=2,則表達(dá)式x*=y+8的值為.C語言中的字符變量用保留字來說明.intx=2,y=3,z=4;貝/表達(dá)式x+y&&z的值為.4表達(dá)式3&&0的值是.5設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for循環(huán)后,k的值為.for(i=0,j=10;i<=j;i++,j-)k=i+j;6若有以下數(shù)組a,數(shù)組元素:a⑼?a⑼,其值為941282107513,該數(shù)組的元素中,數(shù)值最大的元素的下標(biāo)值是.7執(zhí)行以下程序段后,s的值是.inta[]={5,3,7,2,l,5,3,10},s=0,k;for(k=0;k<8;k+=2)s+=*(a+k);8函數(shù)調(diào)用時(shí)的實(shí)參和形參之間的數(shù)據(jù)是單向的傳遞.30char1010216值四程序設(shè)計(jì)/* 【程序設(shè)計(jì)】功能:將字符串中的小寫字母轉(zhuǎn)換為對■應(yīng)的大寫字母,其它字符不變。 */include"string.h"include"stdio.h"voidchange(charstr[]){?***????/)main()(voidchange();charstr[40];voidTestFunc();gets(str);change(str);puts(str);TestFunc();voidTestFunc(){FILE*IN,*OUT;chari[200];IN=fopen("in.dat","r");if(IN==NULL){printf("ReadFileError");|OUT=fopen("out.dat","w");if(OUT==NULL)printf('*WriteFileError");fscanf(IN,"%s",i);change(i);fprintf(OUT;'%s\n"/i);fclose(IN);fclose(OUT);【參考代碼】inti;for(i=0;str[i]l='\0';i++)if(str[i]>='a'&&str[i]<='z')str[i]=str[i]-32;/* 【程序設(shè)計(jì)】功能:根據(jù)整型形參m,計(jì)算如下公式的值:y=sin(m)*10o例如:若m=9,則應(yīng)輸出:4.121185 7#include"stdio.h"#include"math.hndoublefun(intm)*********End*********main(){intn;voidTestFunc();printf("Entern:”);scanf("%d”,&n);printf("\nTheresultis%lf\n"zfun(n));TestFunc();}voidTestFunc()(FILE*IN,*OUT;inti;intt;doubleo;IN=fopen("in.dat","r");if(IN==NULL){printf("ReadFileError");}OUT=fopen("out.dat","w");if(OUT==NULL){printf("WriteFileError");|for(i=0;i<5;i++)(fscanf(IN,"%d",&t);o=fun(t);fprintf(OUT,"%lf\n",o);}fclose(IN);fclose(OUT);|【參考代碼】doubley=0;y=sin(m)*10;return(y);五程序改錯(cuò)【程序改錯(cuò)】功能:給一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美發(fā)店員工合同范本(7篇)
- 2024-2025學(xué)年第2課諸侯紛爭與變法運(yùn)動(dòng)-勤徑學(xué)升高中歷史必修上同步練測(統(tǒng)編版2019)
- 2025年企業(yè)市場營銷合作伙伴協(xié)議
- 2025年酒店客房用品訂購合同模板
- 2025年不動(dòng)產(chǎn)權(quán)益讓與擔(dān)保協(xié)議版
- 2025年電動(dòng)車維修服務(wù)合同示范
- 2025年水文測量儀器項(xiàng)目立項(xiàng)申請報(bào)告模范
- 2025年企業(yè)銷售專員合同格式
- 2025年戀愛雙方保密協(xié)議策劃模板
- 2025年度股權(quán)變更持有人協(xié)議
- 《水電站繼電保護(hù)》課件
- 部編高教版2023·職業(yè)模塊 中職語文 2.《寧夏閩寧鎮(zhèn):昔日干沙灘今日金沙灘》 課件
- 心肺復(fù)蘇術(shù)課件2024新版
- 學(xué)校開學(xué)安全隱患自查表
- 2024新人教版初中英語單詞表匯總(七-九年級)中考復(fù)習(xí)必背
- 內(nèi)鏡下粘膜剝離術(shù)(ESD)護(hù)理要點(diǎn)及健康教育
- 2022年全省百萬城鄉(xiāng)建設(shè)職工職業(yè)技能競賽暨“華衍杯”江蘇省第三屆供水安全知識競賽題庫
- 廣西北海LNG儲罐保冷施工方案
- 《生態(tài)學(xué)》課件—第1章:緒論
- 中心靜脈壓(CVP)監(jiān)測及波形分析
- 人教版(PEP)英語五年級下冊-Unit 1My day A Let’s spell 教案
評論
0/150
提交評論