4.編一個(gè)無返回值,名為trus的函數(shù),要求如下:
形式參數(shù):數(shù)組s1[2][3]和s2[3][2] 是整型數(shù)組。
功能:將s1數(shù)組轉(zhuǎn)置后存入s2數(shù)組中。
【解】為實(shí)現(xiàn)問題要求,可用兩重循環(huán),按行按列的順序遍歷數(shù)組s1的元素,將它們分別復(fù)制到數(shù)組s2的對位位置即可。
void trus(int sl[][3], int s2[][2])
{ int i,j ;
for(i=0; i<2; i++)
for(j= 0;j<3; j++)
s2[j][i] =s1[i][j];
}
5.編一個(gè)名為countc函數(shù),要求如下:
形式參數(shù):array存放字符串的字符型數(shù)組名。
功能:統(tǒng)計(jì)array數(shù)組中存放的字符串中的大寫字母的數(shù)目。
返回值:字符串中的大寫字母的數(shù)目。
【解】為統(tǒng)計(jì)字符串中大寫英文字母的個(gè)數(shù),函數(shù)引入一個(gè)計(jì)數(shù)變量.通過遍歷字符串,當(dāng)發(fā)現(xiàn)字符率中的字符是大寫字母時(shí),計(jì)數(shù)變量增1。字符率遍歷結(jié)束,返回計(jì)數(shù)變量的值。
int counic(char *array)
{ int c=0;
while(* M) {
if(*array>=’A’ && *array<’Z’) c++;
array ++;
}
return c;
}
6.編一個(gè)名為link函數(shù),要求如下:
形式參數(shù):s1[40],s2[40],s3[80] 是用于存放字符串字符數(shù)組。
功能:將s2連接到s1后存入s3中。
返回值:連接后字符串的長度。
【解】這是要編寫兩字符串連接拷貝到另一字符串的函數(shù),函數(shù)返回連接后的字符串的長度。實(shí)現(xiàn)函數(shù)的功能,就是先將s1中的字符串復(fù)制到s3,繼續(xù)將s2中的字符串復(fù)制到s3。
void link( char *sl, char *s2,char *s3)
{ while(*s3++=*sl++);
s3 - - /* 準(zhǔn)備復(fù)蓋字符串結(jié)束標(biāo)記符*/
while(*s3++= * s2++);
}
7.編一個(gè)函數(shù),求一維實(shí)型數(shù)組前n個(gè)元素的最大數(shù)、最小數(shù)和平均值。函數(shù)利用數(shù)組和n兩個(gè)形參,求得最大值、最小值、平均值,并分別利用另外三個(gè)指針形參將求得的最大值。最小值、平均值傳回。本函數(shù)無返回值。
【解】函數(shù)設(shè)一個(gè)數(shù)組形參a、一個(gè)整數(shù)形參n、傳回最大值的指針形參、傳回最小值的指針形參和傳回平均值的指針形參。函數(shù)通過遍歷找出最大值、最小值和數(shù)組的元素和,最后將數(shù)組元素和除以n求得平均值。
void maxMinAve( double a[],double n, double *maxp,double *minp,double *avep)
{double s=0.0, max=* a, min=*a; int m;
while(m--) {
s+=*a;
if(*a> max) max=* a;
if(*a
}
*maxp= max; *minp=min; *avep= s/n;
}
更多軟考資料請?jiān)L問:考試吧軟件水平考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |