




已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
一、 素數(shù)題:題目1.請編寫一個函數(shù)jsValue(int m,int k,int xx),該函數(shù)的功能是:將大于整數(shù)m且緊靠m的k個素數(shù)存入數(shù)組xx傳回。 例如:若輸入17 5 則應(yīng)輸出:19,23,29,31,37。 int isP(int m) int i; for(i=2;i0;m+) if(isP(m) xxs+=m; k-;題目34.程序prog1.c的功能是:選出100以上1000之內(nèi)所有個位數(shù)字與十位數(shù)字之和被10除所得余數(shù)恰是百位數(shù)字的素數(shù)(如293)。計算并輸出上述這些素數(shù)的個數(shù)cnt以及這些素數(shù)值的和sum。 請考生編寫函數(shù)countValue( )實現(xiàn)程序要求void countValue() int i,j,bw,sw,gw; for(i=100;i1000;i+) bw=i/100; sw=i%100/10; gw=i%10; for(j=2;ji;j+) if(i%j=0) break; if(i=j) &(gw+sw)%10=bw) cnt+; sum+=i; 55、已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調(diào)用讀函數(shù)ReadDat()把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsValue(),其功能是:求出所有這些四位數(shù)是素數(shù)的個數(shù)cnt,再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的四位數(shù)按從小到大的順序進(jìn)行排序,最后調(diào)用寫函數(shù)writeDat()把結(jié)果輸出到out.dat文件。 例如:5591是素數(shù),則該數(shù)滿足條件存入數(shù)組b中,且個數(shù)cnt=cnt+1。9812是非素數(shù),則該數(shù)不滿足條件忽略。#include int a300,b300,cnt=0;int isP(int m) int i; for(i=2;im;i+) if(m%i=0)return 0; return 1;jsValue()int i,j,value; for(i=0;i300;i+) if(isP(ai) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jbj) value=bi; bi=bj; bj=value;題目64下列程序的功能是:找出所有100以內(nèi)(含100)滿足I,I+4,I+10都是素數(shù)的整數(shù)I(I+10也在100以內(nèi))的個數(shù)cnt以及這些I之和sum。請編寫函數(shù)countValue()實現(xiàn)程序要求的功能 int isPrime(int number)int i,tag=1; for(i=2;tag& i=number / 2; i+) if(number % i =0) tag =0; return tag;void countValue()int i; for(i=2;i500;i-) for(j=2;ji;j+) if(i%j=0) break; if(j=i)cnt+; sum=sum+k*i; k=k*(-1); 題目82.已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),請編制一函數(shù)jsValue(),其功能是:求出所有這些四位數(shù)是素數(shù)的個數(shù)cnt,再求出所有滿足此條件的四位數(shù)平均值pjz1,以及不滿足此條件的四位數(shù)平均值pjz2。 例如:5591是素數(shù),則該數(shù)滿足條件計算平均值pjz1,且個數(shù)cnt=cnt+1。 9812是非素數(shù),則該數(shù)不滿足條件計算平均值pjz2。 程序中已定義數(shù)組:a300,已定義變量:cnt,pjz1,pjz2。#include int a300,cnt=0;double pjz1=0.0,pjz2=0.0;int isP(int m)int i; for(i=2;im;i+) if(m%i=0)return 0; return 1;jsValue()int i; for(i=0;i300;i+) if(isP(ai) pjz1+=ai;cnt+; else pjz2+=ai; if(cnt=0) pjz1=0; else pjz1/=cnt; if(300-cnt=0) pjz2=0; else pjz2/=(300-cnt);二、 結(jié)構(gòu)體題目7已知在文件IN.DAT中存有100個產(chǎn)品銷售記錄,每個產(chǎn)品銷售記錄由產(chǎn)品代碼dm(字符型4位),產(chǎn)品名稱mc(字符型10位),單價dj(整型),數(shù)量sl(整型),金額je(長整型)五部分組成。其中:金額=單價*數(shù)量計算得出。請編制函數(shù)SortDat(),其功能要求:按產(chǎn)品代碼從大到小進(jìn)行排列,若產(chǎn)品代碼相同,則按金額從大到小進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j100;j+)if(strcmp(selli.dm,sellj.dm)0|strcmp(selli.dm,sellj.dm)=0&selli.jesellj.je) xy=selli;sell i=sellj; sellj=xy;題目13每個產(chǎn)品銷售記錄由產(chǎn)品代碼dm(字符型4位),產(chǎn)品名稱mc(字符型10位),單價dj(整型),數(shù)量sl(整型),金額je(長整型)五部分組成。其中:金額=單價*數(shù)量計算得出。編制函數(shù)SortDat(),其功能要求:按產(chǎn)品代碼從小到大進(jìn)行排列,若產(chǎn)品代碼相等,則按金額從大到小進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中: void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j0|strcmp(selli.dm,sellj.dm)=0&selli.jesellj.je) xy=selli;selli=sellj;sellj=xy;題目38編制函數(shù)SortDat(),其功能要求:按產(chǎn)品代碼從小到大進(jìn)行排列,若產(chǎn)品代碼相同,則按金額從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j0|strcmp(selli.dm,sellj.dm)=0&selli.jesellj.je) xy=selli;selli=sellj;sellj=xy;題目12編制函數(shù)SortDat(),其功能要求:按產(chǎn)品名稱從小到大進(jìn)行排列,若產(chǎn)品名稱相等,則按金額從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j0|strcmp(selli.mc,sellj.mc)=0&selli.jesellj.je) xy=selli;selli=sellj;sellj=xy;題目32 SortDat(),其功能要求:按產(chǎn)品名稱從大到小進(jìn)行排列,若產(chǎn)品名稱相等,則按金額從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j100;j+) if(strcmp(selli.mc,sellj.mc)sellj.je) xy=selli;selli=sellj;sellj=xy;題目42 SortDat(),其功能要求:按產(chǎn)品名稱從大到小進(jìn)行排列,若產(chǎn)品名稱相等,則按金額從大到小進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j100;j+) if(strcmp(selli.mc,sellj.mc)0|strcmp(selli.mc,sellj.mc)=0&selli.jesellj.je) xy=selli;selli=sellj;sellj=xy;題目31函數(shù)SortDat(),其功能要求:按金額從大到小進(jìn)行排列,若金額相同,則按產(chǎn)品代碼從大到小進(jìn)行排列, 最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j100;j+) if(selli.jesellj.je|selli.je=sellj.je&strcmp(selli.dm,sellj.dm)0) xy=selli;selli=sellj;sellj=xy;題目47函數(shù)SortDat(),其功能要求:按金額從大到小進(jìn)行排列,若金額相等,則按產(chǎn)品代碼從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中,最后調(diào)用函數(shù)WriteDat()把結(jié)果輸出到文件OUT3.DAT中。 void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;j100;j+) if(selli.je0) xy=selli;selli=sellj;sellj=xy;題目61函數(shù)SortDat(),其功能要求:按金額從小到大進(jìn)行排列,若金額相同,則按產(chǎn)品代碼從大到小進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;jsellj.je|selli.je=sellj.je&strcmp(selli.dm,sellj.dm)0) xy=selli; selli=sellj; sellj=xy;題目99函數(shù)SortDat(),其功能要求:按金額從小到大進(jìn)行排列,若金額相等,則按產(chǎn)品代碼從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中void SortDat()int i,j; PRO xy; for(i=0;i99;i+) for(j=i+1;jsellj.je|selli.je=sellj.je&strcmp(selli.dm,sellj.dm)0) xy=selli;selli=sellj;sellj=xy;三、字符替換與移位題目8請編制函數(shù)encryptChar(),按給定的替代關(guān)系對數(shù)組xx中的所有字符進(jìn)行替代,仍存入數(shù)組xx的對應(yīng)的位置上,替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或大于130,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256130) continue; else xxij=xxij*11%256;題目36函數(shù)encryptChar(),替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是數(shù)字0至9,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=0&xxij*11%256=9) continue; else xxij=xxij*11%256;題目56encryptChar(),替代關(guān)系:f(p)=p*11mod 256 (p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是小寫字母,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=a&xxij*11%256=z) continue; else xxij=xxij*11%256;題目62(字符替換題)編制函數(shù)encryptChar(), 替代關(guān)系:f(p)=p*13 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或其ASCII值是偶數(shù),則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*13%256=32|(xxij*13%256)%2=0) continue; else xxij=xxij*13%256;題目95替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是大寫字母,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=A&xxij*11%256=Z) continue; else xxij=xxij*11%256;題目98替代關(guān)系:f(p)=p*17 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或其ASCII值是奇數(shù),則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*17%256=32|(xxij*17%256)%2!=0) continue; else xxij=xxij*17%256;題目96(字符替換題)請編制函數(shù)encryptChar()替代關(guān)系:f(p)=p*11mod 256 (p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是小寫字母,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=a&xxij*11%256=z) continue; else xxij=xxij*11%256;題目18編制函數(shù)encryptChar(), 替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果原字符的ASCII值是偶數(shù)或計算后f(p)值小于等于32,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。 void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=32|xxij%2=0) continue; else xxij=xxij*11%256;題目37替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果原字符是大寫字母或計算后f(p)值小于等于32,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=A&xxij=Z) continue; else xxij=xxij*11%256;題目97編制函數(shù)encryptChar(), 替代關(guān)系:f(p)=p*11 mod 256(p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果原字符是數(shù)字字符0至9或計算后f(p)值小于等于32,則該字符不變,否則將f(p)所對應(yīng)的字符進(jìn)行替代。void encryptChar() int i,j; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=0&xxij=9) continue; else xxij=xxij*11%256;題目10編制函數(shù)ConvertCharA(),其函數(shù)的功能是:以行為單位把字符串中的所有小寫字母改寫成該字母的下一個字母,如果是字母z,則改寫成字母a。大寫字母仍為大寫字母,小寫字母仍為小寫字母,其他字符不變。 例:原文:Adb.Bcdza abck.LLhj 結(jié)果:Aec.Bdeab bcdl.LLik 原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個字符,含標(biāo)點符號和空格。void ConvertCharA(void) int i,j; for(i=0;imaxline;i+) for(j=0;j=a&xxij=y) xxij+=1; 題目73編制函數(shù)ConverCharD(),其函數(shù)的功能是:以行為單位把字符串中的所有小寫字母改寫成該字母的上一個字母,如果是字母a,則改寫成字母z。大寫字母仍為大寫字母,小寫字母仍為小寫字母,其它字符不變。 例:原文:Adb.Bcdza abck.LLhj 結(jié)果:Aca.Bbcyz zabj.LLgi void ConvertCharD(void) int i,j; for(i=0;imaxline;i+) for(j=0;j=b&xxij=z) xxij-=1; 題目11(字符串字母移位題)程序prog1.c的功能是:把 s 字符串中的所有字母改寫成該字母的下一個字母,字母z改寫成字母a。要求大寫字母仍為大寫字母,小寫字母仍為小寫字母,其它字符不做改變。 請編寫函數(shù)chg(char *s)實現(xiàn)程序要求 例如:s 字符串中原有的內(nèi)容為:Mn.123Zxy,則調(diào)用該函數(shù)后,結(jié)果為:No.123Ayz。 void chg(char *s)int I;for(I=0;I=a&si=A&si=Y) si+=1; 題目16編制函數(shù)StrCharJR(),其函數(shù)的功能是:以行為單位把字符串中所有字符的ASCII值右移4位,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的字符仍存入原字符串對應(yīng)的位置上。最后把已處理的字符串仍按行重新存入字符串?dāng)?shù)組xx中void StrCharJR()int i,j; for(i=0;imaxline;i+) for(j=0;j4);題目63(字符串移位題)程序prog1.c的功能是:把 s 字符串中的所有字符左移一個位置,串中的第一個字符移到最后。編寫函數(shù)chg(char *s)實現(xiàn)程序要求 例如:s字符串中原有內(nèi)容為:Mn.123xyZ,則調(diào)用該函數(shù)后,結(jié)果為:n.123xyZM。 void chg(char *s) int i; char ch=*s; for(i=0;istrlen(s)-1;i+) si=si+1; sstrlen(s)-1=ch;題目100(字符替換題)函數(shù)ReadDat()實現(xiàn)從文件IN.DAT中讀取一篇英文文章存入到字符串?dāng)?shù)組xx中,請編制函數(shù)CharConvA(),其函數(shù)的功能是:以行為單位把字符串中的最后一個字符的ASCII值右移4位,高位補0后加最后第二個字符的ASCII值,得到最后一個新的字符,最后第二個字符的ASCII值右移4位,高位補0后加最后第三個字符的ASCII值,得到最后第二個新的字符,依此類推一直處理到第二個字符,第一個字符的ASCII值加原最后一個字符的ASCII值,得到第一個新的字符,得到的新字符分別存放在原字符串對應(yīng)的位置上。最后已處理的字符串仍按行重新存入字符串?dāng)?shù)組xx中,最后調(diào)用函數(shù)writeDat()把結(jié)果xx輸出到文件OUT10.DAT中。void CharConvA() int i,j; char p,c; for(i=0;i0;j-) xxij=(xxij4)+xxij-1; xxi0=p+c; 題目74(字符ASCII值移位替換題)請編制函數(shù)StrCharJL(),其函數(shù)的功能是:以行為單位把字符串中的所有字符的ASCII值左移4位,如果左移后,其字符的ASCII值小于等于32或大于100,則原字符保持不變,否則就把左移后的字符ASCII值再加上原字符ASCII值,得到新的字符仍存入原字符串對應(yīng)的位置上。最后把已處理的字符串仍按行重新存入字符串?dāng)?shù)組xx中, char xx5080;int maxline=0;/*文章的總行數(shù)*/int ReadDat(void);void WriteDat(void);void StrCharJL(void) int i,j; char c; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) c=xxij4; if(!(c100) xxij+=c; 題目17 (親朋字符替換題)編制函數(shù)CHA(),其函數(shù)功能是:以行為單位把字符串中的第一個字符的ASCII值加第二個字符的ASCII值,得到第一個親朋字符,第二個字符的ASCII值加第三個字符的ASCII值,得到第二個新字符,依此類推一直處理到最后第二個字符,最后一個字符的ASCII值加原第一個字符的ASCII值,得到最后一個新的字符,得到的新字符分別存放在原字符串對應(yīng)的位置上。最后把已處理的字符串逆轉(zhuǎn)后按行重新存入字符串?dāng)?shù)組XX中,void ChA(void) int i,j; char ch; for(i=0;imaxline;i+) ch=xxi0; for(j=0;jstrlen(xxi)-1;j+) xxij+=xxij+1; xxistrlen(xxi)-1+=ch; strrev(xxi); 四、字符串單詞位置倒置題目3請編制函數(shù)StrOR( ),其函數(shù)的功能是:以行為單位依次把字符串中所有小寫字母o左邊的字符串內(nèi)容移到該串的右邊存放,然后把小寫字母o刪除,余下的字符串內(nèi)容移到已處理字符串的左邊存放,之后把已處理的字符串仍按行重新存入字符串?dāng)?shù)組xx中。void StrOR(void)int i,righto,j,s,k; char tem80; for(i=0;i=0;j-) k=0; memset(tem,0,80); if(xxij=o) righto=j; for(s=righto+1;sstrlen(xxi);s+) temk+=xxis; for(s=0;srighto;s+) if(xxis!=o) temk+=xxis; strcpy(xxi,tem); else continue; 題目4函數(shù)StrOL(),其函數(shù)的功能是:以行為單位對行中以空格或標(biāo)點符號為分隔的所有單詞進(jìn)行倒排。最后把已處理的字符串(應(yīng)不含標(biāo)點符號)仍按行重新存入字符串?dāng)?shù)組xx中, 例如:原文:You He Me I am a student.結(jié)果:Me He You student a am I void StrOL(void) int i,j,k,s,m,strl; char str80; for(i=0;i=0;j-) if(isalpha(xxij) k+; else for(m=1;m=k;m+) strs+=xxij+m; k=0; if(!isalpha(xxij) strs+= ; for(m=1;m=k;m+) strs+=xxij+m;strs=0; strcpy(xxi,str); 五、字符串排序題目9(字符串排序題)編制函數(shù)SortCharD(),其函數(shù)的功能是:以行為單位對字符按從大到小的順序進(jìn)行排序,排序后的結(jié)果仍按行重新存入字符串?dāng)?shù)組xx中, 例:原文:dAe,BfC. CCbbAA 結(jié)果:fedCBA. bbCCAA void SortCharD(void)int i,j,k,strl; char ch; for(i=0;imaxline;i+) strl=strlen(xxi); for(j=0;jstrl-1;j+) for(k=j+1;kstrl;k+) if(xxijxxik) ch=xxij; xxij=xxik; xxik=ch; 題目88(字符串排序題)編制函數(shù)SortCharA(),其函數(shù)的功能是:以行為單位對字符按從小到大的順序進(jìn)行排序,排序后的結(jié)果仍按行重新存入字符串?dāng)?shù)組xx中, 例:原文:dAe,BfC. CCbbAA 結(jié)果:,.ABCdef void SortCharA(void)int i,j,k,strl; char ch; for(i=0;imaxline;i+) strl=strlen(xxi); for(j=0;jstrl-1;j+) for(k=j+1;kxxik) ch=xxij; xxij=xxik; xxik=ch; 題目43(字符排序題)請編制函數(shù)jsSort(),其函數(shù)的功能是:以行為單位對字符串變量的下標(biāo)為奇數(shù)的字符按其ASCII值從小到大的順序進(jìn)行排序,排序后的結(jié)果仍按行重新存入字符串?dāng)?shù)組xx中,例:位置01234567源字符串a(chǎn) b c d e f g h則處理后字符串 a h c f e d g bvoid jsSort()int i,j,k,strl; char ch; for(i=0;i20;i+) strl=strlen(xxi); for(j=1;jstrl;j=j+2) for(k=j+2;kxxik) ch=xxij;xxij=xxik;xxik=ch; 字符串左右排序交換題目44請編制函數(shù)jsSort(),其函數(shù)的功能是:以行為單位對字符串按給定的條件進(jìn)行排序,排序后的結(jié)果仍按行重新存入字符串?dāng)?shù)組xx中,條件:從字符串中間一分為二,左邊部分按字符的ASCII值降序排序,排序后左邊部分與右邊部分進(jìn)行交換。如果原字符串長度為奇數(shù),則最中間的字符不參加處理,字符仍放在原位置上。例如:位置012345678源字符串a(chǎn) b c d h g f e 1 2 3 4 9 8 7 6 5處理后 h g f e d c b a 8 7 6 5 9 4 3 2 1void jsSort() int i,j,k,strl,half; char temp; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;khalf;k+) if(xxij=0;j-,k-) temp=xxij; xxij=xxik; xxik=temp; 題目50編制函數(shù)jsSort(),其函數(shù)的功能是:以行為單位對字符串按給定的條件進(jìn)行排序,排序后的結(jié)果仍按行重新存入字符串?dāng)?shù)組xx中,條件:從字符串中間一分為二,左邊部分按字符的ASCII值升序排序,排序后左邊部分與右邊部分進(jìn)行交換。如果原字符串長度為奇數(shù),則最中間的字符不參加處理,字符仍放在原位置上。例:位置源字符串d c b a h g f e 4 3 2 1 9 8 7 6 5處理后 h g f e a b c d 8 7 6 5 9 1 2 3 4void jsSort() int i,j,k,strl,half; char temp; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;kxxik) temp=xxij; xxij=xxik; xxik=temp; for(j=half-1,k=strl-1;j=0;j-,k-) temp=xxij; xxij=xxik; xxik=temp; 題目71、編制函數(shù)jsSort(),條件:從字符串中間一分為二,左邊部分按字符的ASCII值降序排序,右邊部分按字符的ASCII值升序排序。如果原字符串長度為奇數(shù),則最中間的字符不參加排序,字符仍放在原位置上。例如:位置源字符串a(chǎn) b c d h g f e 1 2 3 4 9 8 7 6 5處理后字符串 d c b a e f g h 4 3 2 1 9 5 6 7 8void jsSort()int i,j,k,strl,half; char ch; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;khalf;k+) if(xxijxxik) ch=xxij;xxij=xxik;xxik=ch; if(strl%2) half+; for(j=half;jstrl-1;j+) for(k=j+1;kxxik) ch=xxij;xxij=xxik;xxik=ch; 六、單詞個數(shù)統(tǒng)計題目19編寫一個函數(shù)findStr(char *str,char *substr),該函數(shù)統(tǒng)計一個長度為2的子字符串在另一個字符串中出現(xiàn)的次數(shù)。例如,假定輸入的字符串為asd asasdfg asd as zx67 asd mklo,子字符串為as,函數(shù)返回值是6。 函數(shù)ReadWrite()實現(xiàn)從文件in.dat中讀取兩個字符串,并調(diào)用函數(shù)findStr(),最后把結(jié)果輸出到文件out.dat中。 int findStr(char*str,char *substr) int i,j,len1,len2,cnt=0,flag; len1=strlen(str); len2=strlen(substr); for(i=0;ilen1;i+) for(j=0;jlen2;j+) if(stri+j=substrj) flag=1; else flag=0;break; if(flag=1) cnt+; return cnt;七、Fibonacci數(shù)列題目20 jsValue,它的功能是:求Fibonacci數(shù)列中大于t的最小的一個數(shù),結(jié)果由函數(shù)返回。其中Fibonacci數(shù)列F(n)的定義為: F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) 例如:當(dāng)t=1000時,函數(shù)值為:1597。 int jsValue(int t) int f0=0,f1=1,fn; fn=f0+f1; while(fn=t) f0=f1; f1=fn; fn=f0+f1; return fn;八、整數(shù)排序題目2編制一函數(shù)jsVal(),其功能是:如果四位數(shù)各位上的數(shù)字均是0或2或4或6或8,則統(tǒng)計出滿足此條件的個數(shù)cnt,并把這些四位數(shù)按從大到小的順序存入數(shù)組b中。void jsVal() int i,j,qw,bw,sw,gw; for(i=0;iMAX;i+) qw=ai/1000; bw=ai/100%10; sw=ai%100/10; gw=ai%10; if(qw&qw%2=0&bw%2=0&sw%2=0&gw%2=0) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) qw=bi; bi=bj; bj=qw;題目5編制函數(shù)jsSort(),
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《媽媽別哭》觀后感6篇
- 節(jié)能減排項目碳普惠核證減排量實施方案
- 海洋科技創(chuàng)新的政策推動與實施路徑
- 開關(guān)穩(wěn)壓電源設(shè)計
- 安全教育之防溺水
- 2024屆浙江省金麗衢十二校高三上學(xué)期第一次聯(lián)考?xì)v史 含解析
- 肺部感染健康教育
- 石家莊鐵道大學(xué)四方學(xué)院《土地整治》2023-2024學(xué)年第二學(xué)期期末試卷
- 商洛學(xué)院《應(yīng)用開發(fā)》2023-2024學(xué)年第二學(xué)期期末試卷
- 六盤水幼兒師范高等??茖W(xué)?!锻恋販y量》2023-2024學(xué)年第二學(xué)期期末試卷
- 八年級數(shù)學(xué)題試卷及答案
- 2025年物業(yè)管理從業(yè)人員考試試卷及答案
- 比亞迪新能源汽車業(yè)務(wù)競爭戰(zhàn)略:基于全產(chǎn)業(yè)鏈優(yōu)勢的多維剖析與展望
- 教研員考試試題及答案
- 河北檢察院試題及答案
- 2025年下半年山東濰坊市工程技師學(xué)院招聘事業(yè)單位控制總量教師35人易考易錯模擬試題(共500題)試卷后附參考答案
- 部編版語文四年級下冊 26《寶葫蘆的秘密》整本書教學(xué)設(shè)計
- 《高血壓疾病診斷與治療》課件
- 四川省成都市青羊區(qū)2025年中考語文二診試卷(含答案)
- 2025年世界經(jīng)濟形勢展望
- 2025阿里地區(qū)改則縣輔警考試試卷真題
評論
0/150
提交評論