東北大學(xué)c語言編程試題及其答案_第1頁
東北大學(xué)c語言編程試題及其答案_第2頁
東北大學(xué)c語言編程試題及其答案_第3頁
東北大學(xué)c語言編程試題及其答案_第4頁
東北大學(xué)c語言編程試題及其答案_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

東北大學(xué)C語言題庫第一部分(選擇題)1、構(gòu)成C語言的基本單位是 o你的答案是:正確答案是:B過程函數(shù)語句命令2、設(shè)x為整型變量,不能正確表達(dá)數(shù)學(xué)關(guān)系:5VXV10的c語言表達(dá)式是 。你的答案是:正確答案是:A5<="H>x>5&&x<10x=6||x==7||x==8||x=9!(x<=5)&&(x<10)3、在C語言中,邏輯運(yùn)算符的優(yōu)先級從高到低的排列順序?yàn)閛你的答案是:正確答案是:D&&、|卜!||、&&、!&&、!、||!、&&、||"student”);HcH);&a);“hello”);4"student”);HcH);&a);“hello”);printfprintf("%s\n”,printf("%s\n”,5、對于f。1(表達(dá)式1;;表達(dá)式3)可以理解為o你的答案是:正確答案是:Bfbi(表達(dá)式1fbtfbi(表達(dá)式1fbt(表達(dá)式1fbt(表達(dá)式1fbi(表達(dá)式11:表達(dá)式3)表達(dá)式1:表達(dá)式3)表達(dá)式3:表達(dá)式3)6、執(zhí)行卜面程序段的結(jié)果是 omaiiiQ{intx=l,a=0,b=0;switch(x){case0:b++;casel:a++;case2:a-H-;b++;}prmtf("a=%d,b=%d",a,b);}你的答案是:正確答案是:Ba=l,b=la=2,b=la=l,b=0a=2,b=27、執(zhí)行下面程序段的結(jié)果是 ointx=0:do{printf("%序段x-);}while(x);你的答案是:正確答案是:D打印出321打印出23不打印任何結(jié)果陷入死循環(huán)8、設(shè)x=10,y=5;z=15,執(zhí)行下面一段程序后z的結(jié)果是 。If(x>y)if(y>z)x=y:elsez=y;你的答案是:正確答案是:C76549、如果一個函數(shù)被說明為static,那么o你的答案是:正確答案是:B該函數(shù)只能被main函數(shù)調(diào)用該函數(shù)能被當(dāng)前文件的函數(shù)調(diào)用,但不能被其他文件的函數(shù)調(diào)用該函數(shù)不能被當(dāng)前文件的函數(shù)調(diào)用,可以被其他文件的函數(shù)調(diào)用任何文件的函數(shù)都可以調(diào)用該函數(shù)10、下面關(guān)于局部變量的描述中,錯誤的是 。你的答案是:正確答案是:D函數(shù)的局部變量的有效范圍只能在本函數(shù)函數(shù)的形式參數(shù)也是局部變量局部變量的名稱不能和函數(shù)同名稱不同的函數(shù)中不能定義相同名稱的局部變量11、下列初始化字符數(shù)組的語句中,錯誤的是 o你的答案是:正確答案是:Acharstr[5]="hello";charsti[]={'h\,e\T,T,,o,,,\0'};charstr[5]={"hi"};charstr[100]="H;12、引用數(shù)組元素時,數(shù)組下標(biāo)可以是 o你的答案是:正確答案是:D整型常量整型變量整型表達(dá)式以上均可13、己知:chaisti[10],*p=str;下面的語句中正確的是 。你的答案是:正確答案是:Bsti-="ABC";p="ABC";*sti-="ABC";*p="ABC";14、下面語句中,錯誤的是 。你的答案是:正確答案是:Diiit*p;p=&i;iiiti,*p;p=&a;iiiti,*p=&a;iiiti,*p;*p=i;15、下面對于結(jié)構(gòu)體類型的描述正確的是 o你的答案是:正確答案是:A結(jié)構(gòu)體類型的大小為各成員變量所占內(nèi)存的總和結(jié)構(gòu)體類型變量與簡單數(shù)據(jù)類型變量的引用規(guī)則一致。結(jié)構(gòu)體類型的大小為其成員中所占內(nèi)存空間最大的變量的大小結(jié)構(gòu)體類型的大小為其最后一個成員中所占內(nèi)存空間的大小16、C語言規(guī)定:在一個源程序中,main函數(shù)的位置 。你的答案是:正確答案是:C必須在最開始必須在系統(tǒng)調(diào)用的庫函數(shù)的后面可以任意必須在最后17、表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型是。你的答案是:正確答案是:Cintfloatdouble不確定18、在c語言中,chaI型數(shù)據(jù)在內(nèi)存中的存儲形式是。你的答案是:正確答案是:D補(bǔ)碼反碼原碼ASCII碼19、閱讀以下程序,當(dāng)輸入的數(shù)據(jù)形式為:25,13,10<CR>時,正確的輸出結(jié)果為omain(){intx,y,z;scanf("%d%d%cr,&x,&y,&z);p】intf("x+y+z=%d\iT,x+y+z);}你的答案是:正確答案是:Dx+y+z=48x+y+z=35x+z=35不能確定20、有如下程序voidinam(){floatx=2.0,y;if(x<0.0)y=0.0:elseif(x<10.0)y=1.0/x;elsey=1.0;pnntf(,y);}該程序的輸出結(jié)果是()。你的答案是:正確答案是:C0.0000000.2500000.5000001.00000021、判斷chai型變量s是否為小寫字母的正確表達(dá)式是 o你的答案是:正確答案是:C'a'v=sv='z'(s>='a')&(sv='z')(s>=,a,)&&(s<=,z,)(,ar<=s)and(,zt>=s)22、執(zhí)行以下語句后,y的值為。intx,y,z;x=y=z=0;-H-x||-H-y&&++z;你的答案是:正確答案是:A012不確定值23、有如下程序段:intnumber=0;wliile(number++<=3)piintf("%d\n,number++);則正確的執(zhí)行結(jié)果是 。你的答案是:正確答案是:C234012132424、有如下程序voidniaiiiQ{intn=9;wliile(n>6){n-;printf("%d",n);}}該程序段的輸出結(jié)果是 o你的答案是:正確答案是:B9878768765987625、要使以下程序段輸出10個整數(shù),請?jiān)诳崭裰刑钊胍粋€整數(shù)。for(i=0;i<=;pnntf("%d\n",i+=2));你的答案是:正確答案是:B1518201026、設(shè)函數(shù)fiin的定義形式為:fun(chai-ch.floatx){…}則以下對函數(shù)bin的調(diào)用語句中正確的是 。你的答案是:正確答案是:Bfbn(“abc",3)t=fim('D',5)fun('ab',3)fiin('78',1)27、函數(shù)求sum(iiitn)的功能是計(jì)算自然數(shù)1到n的和,即l+2+―+n。Main。{piintf("Thesum=%d1,n,\sum(10));}hitsum(intn){ints=Oj;fbr(i=0:i<=n;i-H-)}請從備選答案中選擇一答案,補(bǔ)全程序。你的答案是:正確答案是:Bs=s+n;retunis;s=s+i;retunis;returns;returns+=I;28、設(shè)函數(shù)fun的定義形式為intfiin(inta[]jntn){ints=0,i=0;fbr(i=0;i<n;i-H-)s+=a[i];returns;}main(){mta[10]={l,2,3,4,5};pimtf("sum=%d",fun(&a[2],2));}則程序的運(yùn)行結(jié)果為 。你的答案是:正確答案是:C357929、若有說明:int則對數(shù)組元素的正確引用是 。你的答案是:正確答案是:Da[10]a[3,5]a(5)a[10-10]30、以下不正確的定義語句是 o你的答案是:正確答案是:Bdoublex[習(xí)={2.0,4,0,6.0,&0,10.0};inty[5]={O,l,3,5,7,9};charcl[]={,r;27374\,5,};charc2[]={r\xl07\xay\x8f};31、下而程序的運(yùn)行結(jié)果是 o^includenstdio.hMmam(){charstr口="SWLIA”,c;mtk;fbr(k=O;(c=str[k])!=1\O,;k++){switch(c){caseT:++k;bieak;c你的答案是:正確答案是:BSWASW*SW*ASW32、以下能正確進(jìn)行字符串賦值操作的是 。你的答案是:正確答案是:Dchars[5]={H12345H};cha[s[5]={T,'2;3','4','5','6'};char*s;*s=H12345n;char"12345”;33、以下程序段的運(yùn)行結(jié)果是。Chara[]="program",*p;p=a;while(*p!-g,){prmtf("%c",*p-32);p++;}你的答案是:正確答案是:CPROgramPROGRAMPROproGRAM34、若有說明:char*pc[]={"aaa","bbb","ccc","ddd"};,則以下敘述正確的是 。你的答案是:正確答案是:C*pc[O]代表的是字符串“aaa”的首地址*pc[O]代表的是字符4的首地址pc[O]代表的是字符串“aaa”的首地址pc[O]代表的是字符言的首地址35^卜列程序的運(yùn)行結(jié)果是 o#mclude<stdio.h>#include<striiig.h>voidf(char*s,mtn){chaia,*ql,*q2;ql=s;q2=s+n-l;while(ql<q2){a=*ql++;*ql=*q2—;*q2=a;}}mainQ{charb[]="ABCDEFG";f(b,s你的答案是:正確答案是:BGAGGAGAAGAAGAGGFEDCBAAGADAGA36、定義如下的結(jié)構(gòu)體描述同學(xué)信息structStudent{unsignedlongid;charname[30];charclass[3O];}s;假設(shè)此同學(xué)的序號為1002,姓名為黎明,班級為冶金3班,則描述正確的為o你的答案是:正確答案是:Cid=1002;name=黎明;class=冶金3班;id=1002;name=w黎明”;class="冶金3班”;s.id=1002;s.iiaine=w黎明”;s.class="冶金3班”;s.id=1002;=黎明;s.class=冶金3班;37、用來描述C程序中注釋的是 o你的答案是:正確答案是:C///*/**/**38、下列變量中合法的定義是 o你的答案是:正確答案是:Ashort_a=2-llongif=0xabcLdouble1d=1.5e2floata=1.5e2.739、當(dāng)c的值不為0時,能夠?qū)的值賦給變量a和b的是 你的答案是:正確答案是:C(a=c)||(b=c)(a=c)&&(b=c)a=c=b40、設(shè)有以下程序段,執(zhí)行后的輸出結(jié)果是 iiitx=100,y=200;printf(x,y));你的答案是:正確答案是:B100200100.200編譯出錯第二部分(程序設(shè)計(jì)題)1編程:要求輸入整數(shù)a和b,若a*a+b*b大于100,則輸出a*a+b*b百位以上的數(shù)字,否則輸出兩數(shù)之和a+b。#iiiclude<stdio.h>(inta,b,c;printf(Mpleasemputa=");scanf("%cT,&a);printf(Mpleasemputb=H);scanf("%cT,&b);if(a*a+b*b>100)(c=(a*a+b*b)/100;printf(M%d,\c);}elseprintf(,,%d,ii,\a+b);)2編程:根據(jù)以下函數(shù)關(guān)系:當(dāng)x<=0,y=0;當(dāng)0<x<=10,y=x:當(dāng)10<x<=20,y=10;當(dāng)x>20,y=sm(x):輸入一個x值,計(jì)算出相應(yīng)的y值并輸出。(提示:sin(x)屬于math.h)#iiiclude<stdio.h>#iiiclude<math.h>main()(hitx;floaty;printf('pleasemputx=H);scanf("%cT,&x);if(x<=0)(v=0;JJ}elseif((0<x)&&(x<=10))(y=x;}elseif((10<x)&&(x<=20))(y=io;}elsey=sm(x);}3編程:根據(jù)以下函數(shù)關(guān)系:當(dāng)x〈xv=l,y=x;當(dāng)l<x<=2,y^sqrt(x):當(dāng)x>2,y=siii(x):輸入一個x值,計(jì)算出相應(yīng)的y值并輸出。(提示:sin(x)、sqrt(x)屬于math.h)參考24編程:輸入三個正整數(shù)x,y,z,將這三個數(shù)由小到大輸出。#iiiclude<stdio.h>#iiiclude<math.h>main()(inta[3]jaiiaxj;printf('pleasemputthe3numbers:M);fbr(i=0;i<3;i++)(scanf(”%d”,&a[i]);}fbr(i=0;i<3;i++)(for(j=0;j<2j++)if(a[j]>a[j+l])(inax=a[j];a[j]=a[j+l];a[j+l]=iiiax;}}printf(Mtheresultis");fbr(i=0;i<3;i++)pnntf(M%d,\a[i]);printf(',\nH);)#include<stdio.h>main。(mta,b,c,t;scanf(n%d%d%d'\&a.&b,&c);if(a>b)(t=a;a=b;b=t:)if(a>c)(t=a;a=c;c=t;}if(b>c)(t=b;b=c;c=t;}printf(HTheansweris:%d,%d,%d\iT,a,b,c);}5編程:從鍵盤輸入一個年號,判斷該年號是否為閏年,并輸出結(jié)果。閏年是能被4整除但不能被100整除;或能被100整除且能被400整除的年號。練習(xí)書上有,第一頁6編程實(shí)現(xiàn)四位電話號碼的升位。原來電話號碼為1、3、5、7、9打頭的號碼前加2,原來電話號碼為2、4、6、8打頭的加3,例如:輸入1234,則輸出:21234。#iiiclude<stdio.h>mainQlongx,y;printH'pleasemputtelephonenumberH);scanfC%d\&x);v=x/1000:J ,switch(y)case1:case3:case5:case7:case9:x=2*1OOOO+x;break;case2:case4:case6:case8:x=3*1OOOO+x;break;)printf(Mtheresultis%ld\n,\x);)7編程實(shí)現(xiàn)四位電話號碼的升位。原來電話號碼為1、2、3、4、5打頭的號碼前加3,原來電話號碼為6、7、8、9打頭的加2,例如:輸入1234,則輸出:31234。參考68編程:已知分段函數(shù):當(dāng)x>10時,y=2*x+l;當(dāng)l<x<=10時,y=5*(x+l)*(x-2);當(dāng)x<=l時,y=l-2*x;從鍵盤輸入x的值,計(jì)算y的值。參考29編程:輸入3個正整數(shù),判斷能否組成三角形,如果能夠組成三角形,則輸出三角形的面枳,否則輸出錯誤。三角形面枳公式:area=sqil(s(s-a)(s-b)(s-c)),其中s=l/2(a+b+c)o(提示:sqrt(x)屬于math.h)#mclude<stdio.h>#mclude<math.h>mainQfloatx,y,z;floatarea.s;printH'pleaseinput:");scanfV'%f%f%f',&x,&y,&z);if((x+y<=z)||(z+y<=x)|(x+z<=y))printf(,,no\nH);elses=(x+y+z)/2;aiea=sqrt(s*(s-x)*(s-y)*(s-z));pnntf(M%fur\aiea);10編程:已知分段函數(shù),當(dāng)x<=0時,y=3*x;當(dāng)0<xv=10時,y=(x+l)*(x-2);當(dāng)x>10時,y=2*x*x;從鍵盤輸入x的值,計(jì)算y的值。參考211編程:判定用戶輸入一個不大于999的正整數(shù)是否為一個回文數(shù)?;匚臄?shù)是指正讀和反讀都相同的數(shù)。#iiiclude<stdio.h>mainQmta,x,y,z;piintff'pleasemputanumberM);scanff%d”.&a);if(0<a&&a<=999)x=a/100;y=(a-100*x)/10;z=a%10;if(x==0)if(y==z)printf(,,Yes\nn);elseprintfC'noW);)elseif(x==z)printffyes\n”);elsepnntfC,no'nM);))12編程:從鍵盤輸入一個兩位數(shù)的正整數(shù)a,將其轉(zhuǎn)換形成一個整數(shù)b并輸出b。轉(zhuǎn)換的方式是:將a中較大的數(shù)碼作為b的十位,剩余的數(shù)碼作為b的個位。例如,當(dāng)輸入a=49,則結(jié)果b=94。#iiiclude<stdio.h>mainQmta,b,x,y;piintff'pleasemputanumberM);scanff%d”.&a);if(0<a&&a<100)x=a/10;v=a%10;J 7if(x>=y)b=a;}elseb=10*y+x;}printf(ntheresultis%d”,b);}elsepiintff'awrongnumber");}13編程:從鍵盤輸入一個兩位數(shù)的正整數(shù)a,將其轉(zhuǎn)換形成一個整數(shù)b并輸出b0轉(zhuǎn)換的方式是:將a中較小的數(shù)碼作為b的十位,剩余的數(shù)碼作為b的個位。例如,當(dāng)輸入a=54,則結(jié)果b=45o參考1214初始化數(shù)組a中包含10個不同的整數(shù),要求從鍵盤輸入一個整數(shù),若這個整數(shù)在數(shù)組中則從數(shù)組中刪除這個整數(shù)并輸出刪除后的數(shù)組,否則輸出noo#iiiclude<stdio.h>mainQmta[10]={2,3,4,1,5,6,7,8,9JO},i,x,j,k;printf(MpleasemputanumberM);scanf("%d1&x);for(i=0;i<10;i++)if(a[i]==x)fbr(j=ij<10j++)a[j]=a|j+l];foi(k=0;k<9:k++)pnntf(”%3d”,a[k]);break;}elseif(i==9)pnntf(MnoH);})15初始化一字符串(字符串中的每個字符各不同),要求從鍵盤輸入一個字符,刪除字符串中和輸入字符相同的字符,輸出處理后的字符串。#iiiclude<stdio.h>mainQ\chai-a[7]={HhowareM};chaib[l];inti,j,k;printf(Mpleasemputthestring「');gets(b);for(i=0;i<7;i++)\if(a[i]==b[O])for(j=ij<5j++)\a|j]=a|j+l];}fbr(k=0;k<5;k++)pnntf(”%c”,a[k]);printf(M\nM);break;}elseif(a[i]=-\O,)printf("no\nH);break;}}}16計(jì)算一個4*4矩陣的主對角線的元素之和以及最大元素的值。要求初始化矩陣,輸出計(jì)算結(jié)果并輸出該矩陣。#iiiclude<stdio.h>mainQinta[4][4]={{2,123,l,5},{4,22,56,23},{5,7,89,23},{1,2,3,4}};inti,sum=O,maxJ;for(i=0;i<4;i++)sum=sum+a[i][i];max=a[O][O];fbr(i=0;i<4;i++)for(j=0j<4j++)if(max<a[i][j])max=a[i][j];)piintff'thesumis%dandthemaxnumberis%d\n”,sum,max);)17計(jì)算一個3*3矩陣的所有元素之和以及所有元素中的最大元素的值。要求初始化矩陣,輸出計(jì)算結(jié)果并輸出該矩陣。參考16,懶得弄了18初始化一字符串(長度小于20個字符),取出第3個字符到第7個字符組成的子串,輸出該子串。#iiiclude<stdio.h>mainQchara[20]={Hasldfkjasldkf1};inti;puts(a);for(i=2;i<7;i++)pnntf(M%cn,a[i]);printfC'\nM);)19編程計(jì)算一個a[3][4]數(shù)組的最小值所在位置,輸出該位置以及a[3][4]矩陣。要求初始化矩陣。參考1620初始化一矩陣a[4][4],計(jì)算每行的最大元素值,要求輸出原始矩陣以及每行的最大元素值。#iiiclude<stdio.h>mainQinta[4][4]={{2,123,l,5},{4,22,56,23},{5,7,89,23},{l,2,3,4}},ij,niax;for(i=0;i<4;i++)max=a[i][0];for(j=0j<4j++)f)pnntf(M\nM);)for(i=0;i<4;i++)for(j=0j<4j++)if(max<a[i][j])max=a[i][j];}}piintff'themaxnumberis%diT'max);}21初始化一矩陣a[4][4],計(jì)算每列的最大元素值,要求輸出原始矩陣以及每列的最大元素值。參考2022編程計(jì)算a[3][4]數(shù)組的最大值所在位置,輸出該位置以及a[力[4]矩陣。要求初始化矩陣。參考2023編程實(shí)現(xiàn):計(jì)算矩陣a[力[4]每行元素的和。要求輸出原始矩陣以及每行元素的和值。要求初始化矩陣。參考2024編程實(shí)現(xiàn):計(jì)算矩陣a[力[4]每列元素的和。要求輸出原始矩陣以及每列元素的和值。要求初始化矩陣。參考2025一維數(shù)組中存放任意10個整數(shù),從第四個數(shù)據(jù)開始直到最后一個數(shù)據(jù),依次向右移動一個位置。輸出原始數(shù)據(jù)和移動后的結(jié)果。要求初始化數(shù)組。例如:原始數(shù)據(jù)為:610298717182345,輸出結(jié)果為:61029987171823454>#iiiclude<stdio.h>mainQ/inta[ll]={6,10,2,9,8,7,17J8,23,45},i;piintff'theoriginstringsis");fbr(i=0;i<10;i++)pnntf(”%3d”,a[i]);pnntf(M\nM);fbr(i=10;i>3;i-)a[i]=a[i-l];printf(Mthechangedstrmgsis'');fbr(i=O;i<ll;i++)printf(',\nM);}26編程實(shí)現(xiàn):在任意字符串a(chǎn)中將與字符c相同的所有元素的下標(biāo)值分別存放在數(shù)組b中,輸出字符串a(chǎn)和數(shù)組b。要求初始化數(shù)組a。懶得弄,太簡單27初始化一個存放10個整數(shù)的數(shù)組,刪除其中所有的小于0的數(shù)據(jù)。例如:當(dāng)前的數(shù)據(jù)為1-1-68966-569,則輸出結(jié)果為1896669。#mclude<stdio.h>mainQmta[10]={I,-1,68,9,6,6,-5,6.9};inti;printf(Htheoriginstringis");for(i=0;i<10;i++)pnntf(”%3d”,a[i]);pnntf(H\nM);piintff'thechangestringis");for(i=0;i<10;i++)pnntf(”%3d”,a[i]);}pnntfC,\nM);}28已知4X4矩陣,求行下標(biāo)和列下標(biāo)均為偶數(shù)的元素之和,要求輸出原始矩陣以及和值。提示:例如A⑼[0]、A[0][2]的行下標(biāo)和列下標(biāo)均為偶數(shù)。要求初始化矩陣。#mclude<stdio.h>mainQinta[4][4]={{2J23J,5},{4,22,56,23},{5,7,89,23},{l,2,3,4}};inti,sum=0J;fbr(i=0;i<3;i=i+2)for(j=0j<3j++)printf("%d",a[i][j]);}fbr(i=0;i<3;i=i+2)for(j=0j<3j=j+2)sum=sum+a[i][j];}piintff'theresultis%d\n”,sum);)29已知4X4矩陣,求行下標(biāo)和列下標(biāo)均為奇數(shù)的元素之和,要求輸出原始矩陣以及和值。例如A[l][力的行下標(biāo)和列下標(biāo)均為奇數(shù)。要求初始化矩陣。參考2830函數(shù)voidfun(mta[],intn,mt*sinalLint*big),該函數(shù)的功能是分別求出一維數(shù)組a中所有奇數(shù)項(xiàng)中的最小值與所有偶數(shù)項(xiàng)中的最大值,形參n給出數(shù)組中數(shù)據(jù)的個數(shù);利用指針small返回奇數(shù)項(xiàng)中的最小值,利用指針big返回偶數(shù)項(xiàng)中的最大值。要求:在主調(diào)函數(shù)中初始化一個一維數(shù)組,并在主調(diào)函數(shù)中調(diào)用函數(shù)為n后,在主調(diào)函數(shù)中輸出結(jié)果。#mclude<stdio.h>voidfun(inta[],iiitn,int*smalLiiit*big)intmaxjiiinjj;miii=a[0];max=a[l];if(n%2==0)fbr(i=O;i<=n-2;i=i+2)if(nun>a[i])nuii=a[i];}fbr(j=lJ<=n-lj=j+2)fif(max<a[j])max=a[j];}*big=max;}elsefbr(i=0;i<=n;i=i+2)if(nun>a[i])nuii=a[i];}fbr(j=lJ<=n-lj=j+2)fif(max<a[j])max=a[j];}*big=max;)mainQmt1=0;intstil,str2;inta[8]={2,13,3,4,54,6,8.4}ji;n=8;piintff'theoriginnumbersare:H);do{pnnrfV'%3d”,a[i]);i++;}wliile(i<=7);pnnrffg”);fxin(a,n.&strl.&str2);printff'thenunis%dthemaxis%d\n,\strl,str2);}31函數(shù)voidfun(inta[],mtn,int*big,int*small),該函數(shù)的功能是分別求出數(shù)組a中所有偶數(shù)項(xiàng)中的最小值與所有奇數(shù)項(xiàng)中的最大值,形參n給出數(shù)組中數(shù)據(jù)的個數(shù):利用指針small返回偶數(shù)項(xiàng)中的最小值,利用指針big返回奇數(shù)項(xiàng)中的最大值。要求:在主調(diào)函數(shù)中初始化一個一維數(shù)組,并在主調(diào)函數(shù)中調(diào)用函數(shù)fiin后在主調(diào)函數(shù)中輸出結(jié)果。#mclude<stdio.h>voidnewstr(chai-sti[])mti;mtj=0;clwnewstr[100];fbr(i=O;str[i]!=,\O,;i++)if(str[i]%2!=0)newstr[j]=str[i];J++;}}newsti[j]=A0';for(i=0;i<=j;i++)str[i]=newstr[i];}voidstringcat(charstr1[],charstr2[])char*pl,*p2;pl=strl;p2=str2;while(*pl)pl++;while(*pl-H-=*p2++);)mainQmti;charstrl[]=HIlovethenoitheastenuniversityM;chai-*p,sU2[100];puts(strl);p=stil;fbr(i=O;*(p+i)!^Of;i++)str2[i]=*p++;str2[i]=<\0,;newsti(strl);stimgcat(strl,sti2);puts(strl);)32編寫函數(shù)voidnew(charstr[]),該函數(shù)將字符串str中ASCII值為偶數(shù)的字符刪除,串中剩余字符形成一個新串o編寫函數(shù)voidstiingcat(charstil[],clwsU2[])將原字符串str鏈接在新串的后面。編寫一個程序,調(diào)用上述各個函數(shù)。要求:在main。函數(shù)中初始化字符串str并輸出原字符串str,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串str。要求:不允許使用字符串庫函數(shù)。#iiiclude<stdio.h>voidstrnew(chai-sti[])intij;fbr(i=O;str[i]!=,\O,;i++)if(str[i]%2=0)fbr(=i;str[j]!=、()?++)str[j]=stL|j+l];)))voidstiingcat(charstr1[],charstr2[])char*pl,*p2;pl=strl;p2=str2;while(*pl)pl++;while(*p1-H-=*p2++);}mainQmti;char*pl,*p2;charstrl[100]={Hhowareyoun},sti2[100]={nhowaieyoun};fbr(i=O;strl[i]!="\Or;i-H-)pnntf(”%c”,strl[i]);pnntfC'\nM);stniew(strl);pl=strl;stimgcat(str1,sti2);pnntf(M%s\ir\pl);}33編寫函數(shù)voidnew(charstr口),該函數(shù)將字符串str中下標(biāo)值為偶數(shù)的字符刪除,串中剩余字符形成一個新串o編寫函數(shù)charstrniax(charstr[])在新字符串中查找最大的字符。編寫一個程序,調(diào)用上述各個函數(shù)。要求:在main。函數(shù)中初始化字符串str并輸出原字符串str,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串stt以及最大字符。要求:不允許使用字符串庫函數(shù)。#mclude<stdio.h>niti;voidnewstr(chai-sti[])mtj=0;cliarnewstr[100];fbr(i=1;str[i]!=,\0,;i+=2)newstr[j]=str[i];J++;}newsti[j]=r\0';for(i=0;i<=j;i-H-)sti[i]=newstr[i];}charstrmax(chai-sti[])chaimax[l];niax[O]=str[O];fbr(i=O;str[i]!=,\O,;i++)if(niax[O]<str[i])niax[O]=str[i];}returnniax[O];}mainQcharmax[2];charstr[]=MIlovethenorheeastenuniversity0;puts(str);newsti(str);puts(str);niax[O]=strmax(str);max[l]=\0,;puts(niax);}34編寫函數(shù)voidnew(charstr[]),該函數(shù)將字符串str中ASCII值為奇數(shù)的字符刪除,串中剩余字符形成一個新串。編寫函數(shù)intstrln(charstr口)計(jì)算新串的長度。編寫一個程序,調(diào)用上述各個函數(shù)。要求:在main。函數(shù)中初始化字符串sti,并輸出原字符串str,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串str以及長度。要求:不允許使用字符串庫函數(shù)。參考3235編寫函數(shù)voidnew(charstr口),該函數(shù)將字符串str中下標(biāo)值為奇數(shù)的字符刪除,串中剩余字符形成一個新串。編寫函數(shù)chaistnmn(charstr[])在新字符串中查找最小的字符。編寫一個程序,調(diào)用上述各個函數(shù)。要求:在inainO函數(shù)中初始化字符串str并輸出原字符串str,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串str以及最小字符。要求:不允許使用字符串庫函數(shù)。參考3336編寫函數(shù)voidnew(charstr口),該函數(shù)將字符串str中下標(biāo)值為偶數(shù)的字符刪除,串中剩余字符形成一個新串。編寫函數(shù)voidstrstoc(charstr[])將新字符串中的小寫字母轉(zhuǎn)換為大寫字母。編寫一個程序,調(diào)用上述各個函數(shù)。要求:在main。函數(shù)中初始化字符串str并輸出原字符串sti,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串sUo要求:不允許使用字符串庫函數(shù)。參考3737編寫函數(shù)voidnew(chai-stt[]),該函數(shù)將字符串str中下標(biāo)值為奇數(shù)的字符刪除,串中剩余字符形成一個新串。編寫函數(shù)voidstrstoc(charstr[])將新字符串中的大寫字母轉(zhuǎn)換為小寫字母。編寫程序,調(diào)用上述各個函數(shù)。要求:在main()函數(shù)中初始化字符串SU-并輸出原字符串str,調(diào)用各個函數(shù)后在主函數(shù)中輸出處理后的新字符串st]。要求:不允許使用字符串庫函數(shù)。#mclude<stdio.h>niti;lenstr(charstr[])1=0;do{i++;}while(str[i]!='()');returni;)voidstinew(cliai-str[])intn=lenstr(sti);clwnewstr[100];mtj=0;fbr(i=0;i<n;i=i+2)newstr[j]=str[i];J++;)newsti[j]=A0';for(i=0;i<j;i++)str[i]=newstr[i];str[i]=,\Of;)voidstistoc(cliarsti[])intn=lenstr(sti);foi(i=0;i<n;i++)if(str[i]>fAl&&str[i]<Z")str[i]=str[i]+32;)mainQchai-str[]=MHo\\7AiEYouHeLLOKittYH;puts(str);stniew(str);puts(str);strstoc(str);puts(str);)38編寫函數(shù)voidstif】n(charstr[]),該函數(shù)功能是把st[字符串中的所有字符左移一個位置片中的第一個字符移到最后。編寫主程序,要求在main。函數(shù)中初始化字符串st1并輸出原字符串str,調(diào)用函數(shù)完成字符串移位后在主函數(shù)中輸出處理后的新串。要求:不允許使用字符串庫函數(shù)。#iiiclude<stdio.h>voidstiiiin(cliarstr[])chara[l];inti,n;a[O]=str[O];for(i=O;str[i]?=,\O,;i++)str[i]=su[i+l];n=i;}str[n]=a[0];str[n+l]=、(y;}mainQchai-str[]={MhelloH};puts(str);stifiin(sti);puts(str);}39編寫函數(shù)voidrevstr(char*str),其功能是把字符串str反序。例如字符串str為“abcde”時,則處理后為“edcba",要求:在main()函數(shù)中初始化字符串sti-并輸出原字符串str,調(diào)用函數(shù)后在主函數(shù)中輸出處理后的新字符串str。要求:不允許使用字符串庫函數(shù)。#iiiclude<stdio.h>voidrevstr(char*sti)inti.nLen;chai-1;nLen=5;for(i=0;i<2;i++)t=*(str+i);*(str+i)=*(str+nLen-1-i);*(str+nLen-1-i)=t;}}mainQmti;chai-str[6]=HHelloH;puts(str);revstr(sti);puts(str);}40編寫函數(shù)mtsti-fiin(charstr[],chara),其功能是計(jì)算str所指定字符串中,出現(xiàn)指定字符的個數(shù),并返回此值。例如:若字符串:123412132,輸入字符為:1,則返回:3。要求在main。函數(shù)中初始化字符串str并輸出原字符串str,調(diào)用函數(shù)strftm。后在主函數(shù)中輸出處理后的返回值。要求:不允許使用字符串庫函數(shù)。#mclude<stdio.h>intstifiin(charsti[],chara)inti,num=0;for(i=O;str[i]?=,\O,;i++)if(str[i]=a)num++;}returnnum;}mainQintn;chaistr[]=MThenonheastenuiiiversityH;chai-a;printff'theoriginstringis");puts(str);pnntf(M\nM);printH'pleasemputthestringyouwant:");scanf(H%c,\&a);n=stiixin(sti;a);piintff'thisstringtotallyappear%dtimes\ii,\n);}41編制函數(shù)voidmysticpy(cliar*str1,char*str2),其功能是實(shí)現(xiàn)將str2字符串中的所有的小寫字母拷貝到stil字符串中。編寫函數(shù)voidstrlii(charstrl[])計(jì)算strl串的長度。編寫一個程序,調(diào)用上述各

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論