全國計算機二級C考試題庫(程序設(shè)計部分)_第1頁
全國計算機二級C考試題庫(程序設(shè)計部分)_第2頁
全國計算機二級C考試題庫(程序設(shè)計部分)_第3頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1、找岀2xM整型二維數(shù)組中最大元素的值,并將此值返回 調(diào)用函數(shù)。int fun (int aM)int i,j,max=aOO;for(i=0;i<2;i+)for(j=0;j<M;j+) if(max<aij) max=aij;return max;2、根據(jù)以下公式求n值。I 1x2 1x2x3 Ix2x3x4亍 Sx5 Sx5x7 3x5x7x9xii+l)double fun ( double eps) double s=0.0,s1=1.0;int n=0;while(s1>=eps)s=s+s1;s1=s1*n/(2*n+1);n+;return 2*s;3

2、、求出11000之間能被7或11整除但不能同時被 7和11 整除的所有整數(shù),并將其放在 a所指的數(shù)組中,通過n返回 這些數(shù)的個數(shù)。void fun (int *a, int *n) int i,j=0;for(i=1;i<=1000;i+)if(i%7=0|i%11=0)&&i %77!=0)aj+=i;*n=j;4、刪除字符串中所有*號。void fun( char *a ) int i,j=0;for(i=0;ai!='0'i+)if(ai!='*')aj+=ai;aj='0'5、 實現(xiàn)兩個字符串的連接(不要同時使用庫函

3、數(shù)),即把p2 所指的字符串連接到p1所指的字符串的后面。void fun(char p1, char p2)int i,j;for(i=0;p1i!='0'i+);for(j=0;p2j!='0'j+)p1i+=p2j;p1i='0'6、 某學生的記錄由學號、8門課程成績和平均分組成,學號 和8門課程的成績已在主函數(shù)中給出,請編寫函數(shù)fun,其 功能:求出平均分,并放入記錄的 ave成員中。void fun(STREC *a) int i;a->ave=0.0;for(i=0;i<N;i+)a->ave=a->ave+a

4、->si;a->ave/=N; 7、n名學生的成績已在主函數(shù)中放入一個帶頭結(jié)點的鏈表結(jié)構(gòu)中,h指向鏈表的頭結(jié)點。求岀平均分,并由函數(shù)值返回double fun( STREC *h ) double ave=0.0;STREC *p=h->next;while(p!=NULL) ave=ave+p->s;p=p->next;return ave/N;&將所有大于1小于整數(shù)m的非素數(shù)存入xx所指數(shù)組中, 非素數(shù)的個數(shù)通過 K返回。void fun( int m, int *k, int xx) int i,j,n=0;for(i=4;i<m;i+) fo

5、r(j=2;j<i;j+)if(i%j=0) break;if(j<i) xxn+=i;*k=n;9、求ss所指字符串中指定字符的個數(shù),并返回此值。int fun(char *ss, char c) int i=0;for(;*ss!='0'ss+)if(*ss=c)i+;return i;10、計算n門課程的平均分,結(jié)果作為函數(shù)值返回。float fun ( float *a , int n ) int i;float av=0.0;for(i=0; i<n;i+)av=av+ai;return(av/n);11、 學生的記錄由學號和成績組成,N名學生的數(shù)據(jù)

6、已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組s中,求最高的學生數(shù)據(jù)放在b所指的數(shù)組中。注意:分數(shù)最高的學生可能不止一個,函數(shù)返回 分數(shù)最高的學生的人數(shù)。int fun( STREC *a, STREC *b ) int i,j=0,max=a0.s;for(i=0;i<N;i+)if(max<ai.s) max=ai.s;for(i=0;i<N;i+)if(max=ai.s)bj+=ai;return j; 12、除了字符串前導的*號之外,將串中其他*號全部刪除。void fun( char *a ) int i=0;char *p=a;while(*p&&*p='*&

7、#39;) ai=*p;i+;p+;while(*p) if(*p!='*')ai=*p;i+;ai='O:13、 統(tǒng)計在tt所指的字符串中日至z' 26個小寫字母 給出現(xiàn)的次數(shù),并依次放在pp所指數(shù)組中。void fun(char *tt, int pp) int i;for(i=0;i<26;i+)ppi=0;for(;*tt!='0'tt+)if(*tt>='a '&&*tt<='z')pp*tt-'a'+;14、 將字符串尾部的*號全部刪除,前面和中間的*號

8、不動。void fun( char *a ) while(*a!='0')a+;a_;while(*a='*')a_;*(a+1)='0' 15、 比較字符串的長度,函數(shù)返回較長的字符串,如果相同, 則返回第一個字符串。char *fun ( char *s, char *t) int i,j;for(i=0;si!= '0'i+);for(j=0;tj!= '0'j+);if(i<=j)return t;elsereturn s;16、 學生的記錄由學號成績組成,N名學生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組 s

9、中,函數(shù)返回該學生的學生數(shù)據(jù),指 定的學號在主函數(shù)中輸入。若沒找到指定學號,在結(jié)構(gòu)體變 量中給學號置空串,給成績置-1,作為函數(shù)數(shù)值返回。STREC fun( STREC *a, char *b )int i;STREC str="0",-1;for(i=0;i<N;i+)if(strcmp(ai.num,b)=0)str=ai;return str;17、 將s所指字符串中除下標為偶數(shù)同時ASCII碼值也為偶 數(shù)的字符外,其余的全部刪除字符串中剩余的字符所形成的新串放在 t 數(shù)組中。void fun(char *s, char t)int i,j=0;for(i=0

10、;si!='0'i+)if(i%2=0 && si%2=0)tj+=si;tj='0'18、 利用下面的簡單迭代方法求方程cos(x)-x=0的一個實根s。double fun() double x0,x1;x1=0.0;dox0=x1;x仁 cos(x0);while( fabs(x0-x1)>=1e-6);return x1;19、將字符串中的前導*號全部移到字符串尾部。void fun( char *a ) int i=0,n=0;char *p;p=a;while (*p='*') /*判斷*p是否是*號,并統(tǒng)計*號

11、的個數(shù)*/n+;p+;while(*p) /*將前導*號后的字符傳遞給a*/ai=*p;i+;p+;while(n!=0)ai='*'i+;n-;ai='0'20、N名學生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組中,把分數(shù)最低的學生數(shù)據(jù)放入b所指的數(shù)組中。int fun( STREC *a, STREC *b )int i,j=0,min=a0.s;for(i=0;i<N;i+)if(min>ai.s)min=ai.s;/*找出最小值*/for(i=0;i<N;i+)if(min=ai.s)bj+=ai; /*找出成績與min相等的學生的記錄,存入結(jié)構(gòu)

12、體b中*/return j;21、計算double fun( int m ) int i;double s=0.0;J二十加十噸3)十十如吋,悵地數(shù)値返回for(i=1;i<=m;i+)s=s+log(i);return sqrt(s);22、 只刪除字符前導和尾部的*號,串中字母間的*號都不刪 除。void fun( char *a, int n,int h,int e ) int i,j=0;for(i=h;i<n-e;i+)aj+=ai;|i =閃賓Qaj='0' 23、將s所指字符串中下標為偶數(shù)的字符刪除,剩余字符形 成的新串放在t所指數(shù)組中void fun

13、(char *s, char t) int i,j=O,k=strlen(s);for(i=1;i<k;i=i+2)tj+=si;tj='0'24、 將a, b中的兩位正整數(shù)合并成一個新的整數(shù)放在c中。 合并方式是:將a中的十位和個位依次放在變量 c的百位和 個位上,B中的十位和個位數(shù)依次放在變量 c的十位和千位 上。void fun(int a, int b, long *c)*c=a%10+(b/10)*10+(a/10)*100+(b%10)*1000;25、 除了尾部的*號之外,將字符中的其他的*號全部刪除。 形參p已指向字符串最后的一個字母。void fun(

14、char *a, char *p ) char *t=a;for(;t<=p;t+)if(*t!='*')*(a+)=*t;for(;*t!='0't+)*(a+)=*t;*a='0'26、N名學生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組中,按分 數(shù)降序排列學生的記錄,高分在前,低分在后。void fun( STREC a) int i,j;STREC t;for(i=1;i<N;i+)for(j=0;j<N-1;j+)if(aj.s<aj+1.s)t=aj;aj=aj+1;aj+1=t;27、N名學生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體

15、數(shù)組中,把高于等于平均分的學生數(shù)據(jù)放在b所指的數(shù)組中,高于等于平均分的學生人數(shù)通過形參n傳回,平均分通過函數(shù)值返回。double fun( STREC *a, STREC *b, int *n )int i;double av=0.0;*n=0;for(i=0;i<N;i+)av=av+ai.s;av=av/N;for(i=0;i<N;i+)if(av<=ai.s) b*n=ai;*n=*n+1;return av; 28、將1m之間(含m能被7或11整除的所有整數(shù)放在數(shù) 組a中,并通過n返回這些數(shù)的個數(shù)。void fun ( int m, int *a , int *n )

16、 int i,j=0;for(i=1;i<=m;i+)if(i%7=0|i%11=0)aj+=i;*n=j; 29、將字符串中的前導*號全部刪除,中間和尾部的*號不刪 除。void fun( char *a ) char *p=a;while(*p='*') p+;for(;*p!='0'p+,a+)*a=*p;*a='0' 30、N名學生的成績已在主函數(shù)中放入一個帶有頭結(jié)點的鏈 表結(jié)構(gòu)中,h指向鏈表的頭結(jié)點。找岀學生的最高分。double fun( STREC *h ) double max=h->s;while(h!=NULL)i

17、f(max<h->s) max=h->s;h=h->next;return max;30、找岀一維整型數(shù)組元素最大的值及其所在的下標,并通過形參傳回。主函數(shù)中x是數(shù)組名,n是x數(shù)據(jù)個數(shù),max存放最大值,index存放最大值所在元素的下標。void fun(int a,int n, int *max, int *d) int i;*max=a0;*d=0;for(i=0;i<n;i+)if(*max<ai)*max=ai;*d=i;31、 將s所指字符串中除了下標為奇數(shù)同時ASCII值也為奇 數(shù)的字符之外,其余的所有字符全部刪除,串在剩余字符所 形成的一個新

18、串放在t所指的數(shù)組中。void fun(char *s, char t) int i,j=0,n;n=strlen(s);for(i=0;i<n;i+)if(i%2!=0&&si%2!=0)tj=si;j+;tj='0' 32、實現(xiàn)B=A+ A ,即將矩陣A加上A的轉(zhuǎn)置,存放在矩陣B中。void fun ( int a33, int b33) int i,j;for(i=0;i<3;i+)for(j=0;j<3;j+)bij=aij+aji; 33、將M行N列的二維數(shù)組中的數(shù)據(jù),按列的順序依次放到 一維數(shù)組中。void fun(int (*s)

19、10,int *b,int *n,int mm,int nn)S = 1十一十-十'"+1 + 2 1 + 2+31+2 + 345 int i,j;for(j=0;j<nn;j+)for(i=0;i<mm;i+)b*n=*(*(s+i)+j);*n=*n+1;34、 將兩個兩位數(shù)的正整數(shù) a,b合并成一個整數(shù)放在 c中。 合并的方式是:將a數(shù)的十位和個位數(shù)依次放在 c數(shù)的個位和百位上,b數(shù)的十位和個位數(shù)依次放在c數(shù)的千位和十位上。void fun(int a, int b, long *c) *c=a/10+(b%10)*10+(a%10)*100+(b/10)

20、*1000;35、 將放在字符串數(shù)組中的M個字符串(每串的長度不超過 N),按順序合并成一個新的字符串。void fun(char aMN,char *b) int i,j,k=0;for(i=0;i<M;i+)for(j=0;aij!='0'j+) bk+=aij;bk='0:36、 刪除一個字符串中指定下標的字符。a指向原字符后的 字符串存放在b所指的數(shù)組中,n中存指定的下標。void fun (char a, char b, int n) int i,k=0;for(i=0;ai!='0'i+)if(i!=n)bk+=ai;bk='0

21、'37、 移動一維數(shù)組中的內(nèi)容,若數(shù)組中有n個整數(shù),要求把 下標從0p (含p,p小于等于n-1 )的數(shù)組元素平移到數(shù)組 的最后。void fun(int *w, int p, int n) int x,j,ch;for(x=0;x<=p;x+) ch=w0;for(j=1;j<n;j+)wj-1=wj;wn-1=ch;38、將M行N列的二維數(shù)組中的字符數(shù)據(jù),按列的順序依次 放到一個字符串中。void fun(char (*s)N,char *b) int i,j,k=0;for(i=0;i<N;i+)for(j=0;j<M;j+) bk+=sji;bk=

22、9;0'39、計算float fun(int n) int i,s 1=0;float s=0.0;for(i=1;i<=n;i+)s 1= s1+i;s=s+1.0/s1;return s;40、 將s所指字符串中ASCCII值為奇數(shù)的字符刪除,剩余 字符形成的新串放在t所指數(shù)組中void fun(char *s, char t) int i,j=0,n;n=strlen(s);for(i=0;i<n;i+)if(si%2=0) tj=si;j+;tj='0'42、刪除一維數(shù)組中所有相同的數(shù)使之只剩一個。數(shù)組中的 數(shù)已按由小到大的順序排列函數(shù)返回刪除后數(shù)組

23、的數(shù)據(jù)。int fun(int a, int n) int i,j=1;for(i=1;i<n;i+)if(aj-1!=ai)aj+=ai;return j;43、除了字符串前導和尾部的*號外,將串中其他的*號全部 刪除。void fun( char *a, char *h,char *p ) int i=0;char *q=a;while(qvh) ai=*q; q+;i+;while(qvp) if(*q!='*') ai=*q;i+;q+;while(*q) ai=*q; i+; q+;ai='0'44、 將a,b的兩個兩位正整數(shù)合并成一個新的整數(shù)放

24、在c中,合并方式是:將a中的十位和個位數(shù)依次放在變量c的百位和個位上,b中的十位和個位數(shù)依次放在變量c的千位和十位上。void fun(int a, int b, long *c)*c=a%10+(b%10)*10+(a/10)*100+(b/10)*1000;45、使字符串的前導*號不得多于n個,若多于n個,則刪 除多余的*號,若少于或等于n個,則不做處理,字符串中 間和尾部的*號不刪除。void fun( char *a, int n ) int i=0;int k=0;char *p,*t;p=t=a;while(*t='*')k+;t+;if(k>n) while

25、(*p) ai=*(p+k-n);i+;p+;ai='O:46、 將兩個兩位數(shù)的正整數(shù) a,b合并成一個整數(shù)放在 c中, 合并方式是:將a數(shù)的十位和個位數(shù)依次在 c數(shù)的個位和百 位上,b數(shù)的十位和個位數(shù)依次放在 c數(shù)的十位和千位上。void fun(int a, int b, long *c)*c=a/10+(b/10)*10+(a%10)*100+(b%10)*1000;47、將一個數(shù)字字符串轉(zhuǎn)換為一個整數(shù)。答案:ong fun ( char *p) long n=0;int flag=1;if(*p='-')p+;flag= -1;else if(*p='+

26、')p+;while(*p!='0')n=n*10+*p-'0'p+;return n*flag; .48、求Fibonacc數(shù)列中大于t的最小的數(shù);結(jié)果由函數(shù)返回。Fibonacc數(shù)列F(n)定義為 : 門覚' i' ;:-1int fun( int t) int f0 = 0, f1 = 1, f ;do f = f0 + f1 ;f0 = f1 ;f1 = f ; while(f < t);return f ;49、 把低于平均分的學生數(shù)據(jù)放入b所指的數(shù)組中低于平均分的學生人數(shù)通過形參n返回,平均分通過函數(shù)值返回double

27、fun( STREC *a, STREC *b, int *n ) int i,j=0;double av=0.0;for(i=0;i<N;i+)av=av+ai.s;av=av/N;for(i=0;i<N;i+)if(ai.s<av) bj+=ai;*n=j;return av;50、將ss所指字符串所有下標為奇數(shù)位上的字母轉(zhuǎn)換為大 寫。void fun ( char *ss ) int i;for(i=0;ssi!='0'i+)if(i%2=1 &&ssi>='a'&&ssi<='z

28、9;)ssi=ssi-32;51、 將a,b兩個正整數(shù)合并成一個新的整數(shù)放在c中。合并 方式:將a中的十位和個位數(shù)依次放在變量 c的千位和十位 上, b中的十位和個位數(shù)依次放在變量 c的個位和百位上。void fun(int a, int b, long *c) *c=b/10+(a%10)*10+(b%10)*100+(a/10)*1000;52、使字符串中尾部的*號不多于n個,若多于n個,則刪除多余的*號,若少于或等于n個,則不做任何操作,字符中間的*不刪除。void fun( char *a,int n ) int i=0,k=0;char *p, *t;p=t=a;while(*t)t

29、+;t-;while(*t='*')k+;t-;if(k>n)while(*p&&p<t+n+1) ai=*p; i+;p+;ai='0'53、 將a,b兩個正整數(shù)合并成一個新的整數(shù)放在c中。合并 方式:將a中的十位和個位數(shù)依次放在變量 c的十位和千位 上, b中的十位和個位數(shù)依次放在變量 c的百位和個位上。void fun(int a, int b, long *c) *c=b%10+(a/10)*10+(b/10)*100+(a%10)*1000;54、 將a,b兩個正整數(shù)合并成一個新的整數(shù)放在c中。合并 方式:將a中的十位和個位

30、數(shù)依次放在變量 c的千位和十位 上, b中的十位和個位數(shù)依次放在變量 c的十位和個位上。void fun(int a, int b, long *c) *c=b%10+(a%10)*10+(b/10)*100+(a/10)*1000;55、 把指定分數(shù)范圍內(nèi)的學生數(shù)據(jù)放在b所指的數(shù)組中,分 數(shù)范圍內(nèi)的學生人數(shù)由函數(shù)值返回。int fun( STREC *a,STREC *b,int l, int h ) int i,j=0;for(i=0;i<N;i+)if(ai.s>=l&&ai.s<=h)bj+=ai;return j;56、將s所指字符串中ASCII碼值

31、為偶數(shù)的字符刪除,串中剩余字符形成一個新串放在t所指的數(shù)組中。void fun(char *s, char t) int i=0;for(;*s!='0's+)if(*s%2=1)ti+=*s;ti='0'57、找岀成績最高的學生記錄,通過形參返回主函數(shù)(規(guī)定 只有一個最高分)fun(STU a, STU *s) int i;*s=a0;for(i=0;i<N;i+)if(s_>s<ai.s)*s=ai;58、定義了 N x N的二維數(shù)組,使數(shù)組左下辦三角元素中的 值乘以n。void fun(int a N, int n) int i,j;fo

32、r(i=0;i<N;i+)for(j=0;jv=i;j+)aij=aij*n;59、定義了 N x N的二維數(shù)組,使數(shù)組左下辦三角元素中的 值全部置成0.void fun (int aN) int i,j;for(i=0;i<N;i+)for(j=0;j<=i;j+)aij=0;60、請編一個函數(shù) void fun(int ttMN),tt指向一個 M行N列的二維數(shù)組,求岀二維數(shù)組每列中最大元素,并依次 放入pp所指的一維數(shù)組中。void fun(int ttMN,int ppN) int i,j,max;for(j=0;j<N;j+)max=tt0j;for(i=0;

33、i<M;i+)if(ttij>max)max=ttij;ppj=max;61、 w是一個大于10的無符號整數(shù),若 w是n (n2)位的 整數(shù),則函數(shù)求岀 w的后n-1位的數(shù)作為函數(shù)值返回unsigned fun(unsigned w) int n=1,j,s=1;unsigned t;t=w;while(t>=10)t=t/10;n+;for(j=1;j<n;j+)s=s*10;return w%s;62、請編一個函數(shù)fun(char*s),該函數(shù)的功能是:把字符串 中的內(nèi)容逆置。void fun(char*s) char ch;int i,m,n;i=0;片 1 +

34、1/1! -1-1/2! +1/3! +1/4! + +bWm=n=strlen(s)-1;while(i<(n+1)/2) ch=si;si=sm;sm=ch;i+; m-;63、從字符串中刪除指定的字符。同字母的大、小寫按不同 字符處理void fun( char s,int c) int i=0;char *p;p=s;while(*p) if(*p!=c)si=*p;i+;p+; si='0'64、對長度為7個字符的字符串,除首、尾字符外,將其余 5個字符安ASCII碼降序排列。void fun(char *s,int num) char ch ;int i, j

35、 ;for(i = 1 ; i < 6 ; i+)for(j = i + 1 ; j < 6 ; j+)5=乏工兀一注丁)IO? !if(*(s + i) < *(s + j)ch = *(s + j);*(s + j) = *(s +i);*(s + i) = ch ;65、統(tǒng)計一個長度為2的字符串在另一個字符串中岀現(xiàn)的次 數(shù)。int fun(char *str, char *substr) int i,j=0;for(i=0;stri!='0'i+)if(stri=substr0&&stri+1=substr1) j+;return j;

36、66、 計算并輸出給定整數(shù)n的所有因子(不包括1與自身) 之和。規(guī)定n的值不大于1000.int fun(int n) int s=0,i;for(i=2;i<=n-1;i+) if(n%i=0) s+=i; return s;67、計算double fun(int n) double t,sn=1.0; int i,j;for(i=1;i<=n;i+)t=1.0;for(j=1;jv=i;j+)t*=j;sn+=1.0/t;return sn; 68、計算并輸岀x<0.97時,如下多項式的值,直到為止。1I'0double fun(double x) double

37、s1=1.0,p=1.0,sum=0.0,s0,t=1.0;int n=1;dos0=s1;sum+=s0;t*=n;p*=(0.5-n+1)*x;s仁 p/t;n+;while(fabs(s1-s0)>=1e-6); return sum;69、 計算并輸岀給定10個數(shù)的方差,其中double fun(double x10) double x1=0.0,s=0.0;int i;for(i=0;i<10;i+)x仁 x1+xi;x仁 x1/10;for(i=0;i<10;i+)s=s+(xi-x1)*(xi-x1);return sqrt(s/10);70、 計算并輸出給定數(shù)

38、組(長度為9)中相鄰兩個元素的平 均值的平方根之和。double fun(double x9)double sum=0.0;int i,j=1;for(i=0;i<9;i+)if(j<=8)sum+=sqrt(xi+xi+1)/2.0);j+;return sum;71、計算并輸岀下列多項式值double fun(int n) int i;double s=0.0;for(i=1;i<=n;i+)s=s+(1.0/(2*i-1)-1.0/(2*i);return s; 72、計算并輸岀多項式值1x2 1x2x3 lxlx3x-50double fun(int n) doubl

39、e sum=0,tmp=1;int i;for(i=1;i<=n;i+)tmp=tmp*i;sum+=1.0/tmp;return sum;73、 計算并輸出n (包括n)以內(nèi)所有能夠被5或9整除的 自然數(shù)的倒數(shù)之和。double fun(int n) int i;double sum=0.0;for(i=1;i<=n;i+)if(i%5=0|i%9=0)sum+=1.0/i;return sum;74、計算并輸岀3n之間所有素數(shù)的平方根之和。double fun(int n) int m,k,i;double s=0.0;for(m=3;m<=n;m+)k=sqrt(m);

40、for(i=2;i<=k;i+)=(£x)/10if(m%i=0) break;if(i>=k+1) s+=sqrt(m);return s;75、計算并輸岀double fun(int n) int i;double s=0.0,s1=0.0;for(i=1;i<=n;i+)s1=s1+pow(i,0.5);s=s+s1;return s;76、統(tǒng)計一行字符串中單詞個數(shù),作為函數(shù)值返回。字符串 在主函數(shù)中輸入,規(guī)定所有單詞有小寫字母組成,單詞之間 有若干個空格隔開,一行的開始沒有空格。int fun(char *s) int i,j=0;for(i=0;si!=&

41、#39;0'i+)2)-(1+ ,.1*1 Tbif(si!=' '&&(si+1=' '|si+1='0')j+;return j; 77、找岀成績最低的學生記錄,通過形參返回主函數(shù)(規(guī)定 只有一個最低分)。fun(STU a, STU *s) int i;*s=aO;for(i=0;i<N;i+)if(s_>s>ai.s)*s=ai;78、定義N x N二維數(shù)組,并在主函數(shù)中自動賦值。使數(shù)組右上辦三角元素中的值乘以mvoid fun(int aN, int m) int i,j;for(j=0;j&l

42、t;N;j+)for(i=0;i<=j;i+)aij=aij*m; 79、定義N x N二維數(shù)組,并在主函數(shù)中自動賦值。求出數(shù)組周邊元素的平均值并作為函數(shù)值返回主函數(shù)的sdouble fun (int wN) int i,j,k=0;double av=0.0;for(i=0;i<N;i+)for(j=0;j<N;j+)if(i=0|i=N-1|j=0|j=N-1)av=av+wij;k+;return av/k; 80、求岀二維數(shù)組周邊元素之和,作為函數(shù)值返回。int fun( int a MN) int i,j,sum=0;for(i=0;i<M;i+)for(j=

43、0;j<N;j+)if(i=0|i=M-1|j=0|j=N-1)sum=sum+aij;return sum; 81、使變量h中的值保留兩位小數(shù),并對第三位進行四舍五 入(規(guī)定h中的值為正數(shù))float fun (float h ) long t;t=(h*1000+5)/10;return (float)t/100; 82、實現(xiàn)矩陣(3行、3列)的轉(zhuǎn)置(即行列互換)void fun (int array33) int i,j,t;for(i=0;i<3;i+)for(j=i+1;j<3;j+)t=arrayij;arrayij=arrayji;arrayji=t;83、 i

44、nt fun(int lim,int aaMAX)求出小于或等于 lim 的 所有素數(shù)并放在aa數(shù)組中,并返回所求出的素數(shù)的個數(shù)。int fun(int lim, int aaMAX) int i,j,k=0;for(i=2;i<=lim;i+) for(j=2;j<i;j+)if(i%j=0) break;if(j>=i)aak+=i;return k;84、從傳入的num個字符中找出最長的一個字符串,通過形 參指針max傳回該串地址(用*作為結(jié)束輸入的標識)char *fun(char (*a)81, int num, char *max) int i=0;max=a0;

45、for(i=0;i<num;i+)if(strlen(max)<strlen(ai) max=ai;return max; 85、刪除字符串中的所有空格。void fun (char *str) int i=0;char *p=str;while(*p)if(*p!='')stri=*p;i+;p+;stri='0' 86、 判斷字符串是否為回文,若是,則函數(shù)返回1,主函數(shù)中輸出” YES ,否則返回0,主函數(shù)輸出”NC”。int fun(char *str) int i,n=0,fg=1;char *p=str;while (*p)n+;p+;fo

46、r(i=0;i<n/2;i+)if(stri=strn-1-i);elsefg=0;break;return fg; 87、將M行N列的二維數(shù)組中的數(shù)據(jù),按行的順序依次放到一維數(shù)組中,一維數(shù)組中數(shù)據(jù)的個數(shù)存放在形參n所指的存儲單元中。void fun (int (*s)10, int *b, int *n, int mm,int nn) int i,j,k=0;for(i=0;i<mm;i+) for(j=0;j<nn;j+)bk+=sij;*n=k; 88、 將s所指字符串中下標為偶數(shù)同時 ASCII值為奇數(shù)的字 符刪除,s所指串中剩余的字符形成的新串放在t所指的數(shù) 組中。

47、void fun(char *s, char t) int i, j = 0 ;for(i = 0 ; i < strlen(s) ; i+)if(!(i%2) =0 &&( si%2) tj+= si;tj = 0 ;89、將ss所指字符串所有下標為奇數(shù)位置的字母轉(zhuǎn)換為大 寫(若該位置上不是字母,則不轉(zhuǎn)換)void fun(char *ss) int i;for(i=0;ssi!='0'i+)if(i%2=1 &&ssi>='a'&&ssi<='z')ssi=ssi-32;90、

48、 將a,b中的兩個正整數(shù)合并形成一個新的整數(shù)放在c 中。合并方式:將a中的十位和個位數(shù)依次放在變量 c的十 位和千位上,b中的十位和個位數(shù)依次放在變量 c的個位和 百位上。S=l/(lx2)+ 1/(2x3)+ . + l/(nx(n+ 1)void fun(int a, int b, long *c)*c=(a%10)*1000+(b%10)*100+(a/10)*10+(b/10);91、 m個人的成績存放在score數(shù)組中,將低于平均分的人數(shù)作為函數(shù)值返回,將低于平均分的分數(shù)放在below所指的數(shù)組中。int fun(int score,int m, int below) int i,j

49、=0;S-H-)c+jcV2! +x5/3!十+ h n!float av=0.0;for(i=0;i<m;i+)av=av+scorei/m;for(i=0;i<m;i+)if(scorei<av)belowj+=scorei;return j; 92、求岀能整除x且不是偶數(shù)的各整數(shù),并按從小到大的順序放在pp所指的數(shù)組中,這些除數(shù)的個數(shù)通過形參n返回。void fun (int x, int pp, int *n) int i,j=0;for(i=1;i<=x;i=i+2)if(x%i=0)ppj+=i;*n=j; 93、將大于整數(shù)m且緊靠m的k個素數(shù)存入所指的數(shù)組

50、中。void fun(int m,int k,int xx) int i,j,n;for(i=m+1,n=0;n<k;i+)for(j=2;j<i;j+)if(i%j=0) break;if(j>=i)xxn+=i; 94、 求出數(shù)組的最大元素在數(shù)組中的下標并存放在k所指向 的存儲單元中。int fun(int *s,int t,int *k) int i;*k=0;for(i=0;i<t;i+)if(s*k<si) *k=i;return s*k; 95、 根據(jù)以下公式求p的值,結(jié)果由函數(shù)值帶回。m與n為 兩個正整數(shù)且要求 m>nlong jc(int m

51、) long s=1;int i ;for(i=1;i<=m;i+) s=s*i ;return s;float fun(int m, int n)float p;p=1.0*jc(m)/jc(n)/jc(m-n);return p;96、求小于形參n同時能被3與7整除的所有自然是之和的 平方根,并作為函數(shù)值返回。double fun( int n) double sum=0.0;int i;for(i=21; i<=n; i+)if(i % 3=0) && (i % 7=0) sum+=i;return sqrt(sum); 97、計算并輸岀下列多項式的值doub

52、le fun(int n) int i;double s=0.0;for(i=1;i<=n;i+)s=s+1.0/(i*(i+1);return s;98、計算下列級數(shù)和。double fun(double x, int n) int i;double s=1.0,s1=1.0;for(i=1;i<=n;i+)s 1= s1*i;s=s+pow(x,i)/s1;return s;99、 移動字符串中的內(nèi)容,移動的規(guī)則是把第1m個字符, 平移到字符串的最后,把第 m+1到最后的字符移到字符串的 前部。void fun (char *w,int m)int i,j;char t;for(i=1;i<=m;i+)t=w0;for(j=1;wj!='0'j+)wj-1=wj;wj-1=t;100、

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論