b[n-i-1]=a[i];
}
8.structStrNode{
charname[15];//字符串域
StrNode*next;//指针域
};
voidQB(StrNode*&f,intn){
if(n==0){f=NULL;return;}
f=newStrNode;
cin>>f->name;
StrNode*p=f;
while(--n){
p=p->next=newStrNode;
cin>>p->name;
}
p->next=NULL;
}
四、写出下列每个函数的功能
1.计算
的值并返回。
2.求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。
3.采用选择排序的方法对数组a中的n个整数按照从小到大的次序重新排列。
4.从文件fname中依次读取每个字符串并输出到屏幕上显示出来,同时统计并显示出文件中的字符串个数。
5.比较两个整数a和b的大小,若a>b则返回1,若a==b则返回0,若a
6.求出从键盘上输入的n个常数的平方和并返回。
7.模板函数,把数组a的每个元素按逆序放入数组b中。
8.建立一个具有n个结点的链表,每个结点的字符串值由键盘输入,链表的
表头指针由引用变量f带回。
1.intWC(inta[],intn,intk){
intc=0;
for(inti=0;iif(a[i]>=k)c++;
returnc;
}
函数功能:
2.boolSG(intx){//x为大于等于2的整数
for(inti=2;iif(x%i==0)break;
if(i==x)returntrue;elsereturnfalse;
}
函数功能:
3.假定结构类型Worker中的name域表示姓名,age域表示年龄,pay域表示工资。
voidQA(Workera[],intn){
for(inti=0;icin>>a[i].name>>a[i].age>>a[i].pay;
}
函数功能:
1.统计出数组a的n个元素中大于等于参数k的值的元素个数并返回。
2.判断x是否为一个素数(或质数),若是则返回真,否则返回假。
3.从键盘上输入n个Worker结构类型的记录依次保存到一维数组a的对应元素中。
1.floatFI(int5){//n为大于等于1的整数
floatx,y=0;
do{
cin>>x;
y+=x*x;y=x*x+x*x+
}while(--n>0);
returny;
}
函数功能:
2.boolWE(inta[],intb[],intn){
for(inti=0;iif(a[i]!
=b[i])break;
if(i==n)returntrue;returnfalse;
}
函数功能:
3.voidLK(inta[],intn,int&m){
floats=0;
inti;
for(i=0;is/=n;
m=0;
for(i=0;i=s)m++;
}
函数功能:
1.求出从键盘上输入的n个整数的平方和并返回。
2.判断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,否则返回假。
3.统计出数组a的前n个元素中大于等于其平均值的元素个数并由引用参数m带回。
1.doubleFI(doublen){//n为大于等于1的整数
doublex,y=0;
for(inti=0;icin>>x;y+=x;
}
returny;
}
函数功能:
2.intWG(inta,intb){
if(a>b)return1;
elseif(a==b)return0;
elsereturn-1;
}
函数功能:
3.假定结构类型StrNode带有一个字符串域name[20]和一个结点指针域next。
voidQB(StrNode*&f,intn){//f为单链表的表头指针
if(n==0){f=NULL;return;}
f=newStrNode;//由f指向一个新结点
cin>>f->name;
StrNode*p=f;
while(--n){
p=p->next=newStrNode;
cin>>p->name;
}
p->next=NULL;
}
函数功能:
1.求出并返回从键盘上输入的n个实数之和。
2.比较两个整型参数a和b的大小,若a>b则返回1,若a==b则返回0,若a
3.根据从键盘上依次输入的n个字符串建立一个具有n个结点的链表,链表的表头指针由引用变量f带回。
1.doubleFI(doublen){//n为大于等于1的整数
doublex,y=0;
for(inti=0;icin>>x;y+=x;
}
returny;
}
函数功能:
2.intWG(inta,intb){
if(a>0&&b>0)return1;
elseif(a<0&&b<0)return-1;
elsereturn0;
}
函数功能:
3.假定结构类型StrNode带有一个字符串域name[20]和一个结点指针域next。
intQB(StrNode*f){//f为单链表的表头指针
if(f==NULL)return0
intn=0;
while(f!
=NULL){n++;f=f->next;}
returnn;
}
函数功能:
1.求出并返回从键盘上输入的n个实数之和。
2.若a和b都大于0则返回1,若a和b都小于0则返回-1,其他任何情况则返回0。
3.求出并返回f单链表的长度(即结点个数)。
1.boolWB(inta[],intn,intx){
for(inti=0;iif(a[i]==x)returntrue;
returnfalse;
}
函数功能:
2.intLJ(inta[],intn){
intk=0;
for(inti=1;iif(a[i]>a[k])k=i;
cout<}
函数功能:
3.假定结构类型DNode中的data域为结点值域,next域为结点指针域。
voidQB(DNode*f)//f指向单链表的表头结点
{
if(f==NULL)return;
while(f!
=NULL){
cout<data<<'';
f=f->next;
}
}
函数功能:
1.从数组a中顺序查找值为x的元素,若查找成功则返回真,否则返回假。
2.求出数组a中n个元素的最大值并返回。
3.遍历输出f单链表中的所有结点的值。
1.
intSA(inta,intb)
{
if(a>b)return1;
elseif(a==b)return0;
elsereturn-1;
}
函数功能:
2.
intLK(inta[],intn)
{
floats=0;
inti;
for(i=0;is/=n;
intm=0;
for(i=0;i=s)m++;
returnm;
}
函数功能:
3.
intWD(inta[],intn)
{
intm=a[0];
for(inti=1;iif(a[i]>m)m=a[i];
returnm;
}
函数功能:
1.比较两个整数a和b的大小,若a>b则返回1,若a=b则返回0,若a
2.求出数组a的n个元素中大于等于平均值的元素个数并返回。
3.从数组a的n个元素中求出最大值并返回。
1.doubleFI(intn){//n为大于等于1的整数
doublex,y=0;
do{
cin>>x;
y+=x;
}while(--n);
returny;
}
函数功能:
2.boolWE(inta[],intb[],intn){
for(inti=0;iif(a[i]!
=b[i])break;
if(i==n)returntrue;returnfalse;
}
函数功能:
3.intLK(inta[],intn){
doubles=0;
inti,m=0;
for(i=0;is=s/n;
for(i=0;i=s)m++;
returnm;
}
函数功能:
1.求出从键盘上输入的n个整数的和并返回。
2.判断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,否则返回假。
3.统计出数组a[n]中大于等于其平均值的元素个数并作为函数值返回。
1.intSA(inta,intb){
if(a>b)return1;
elseif(a==b)return0;
elsereturn-1;
}
函数功能:
2.intLK(inta[],intn){
floats=0;inti;
for(i=0;is/=n;
intm=0;
for(i=0;i=s)m++;
returnm;
}
函数功能:
3.intWD(inta[],intn){
intm=a[0];
for(inti=1;iif(a[i]>m)m=a[i];
returnm;
}
函数功能:
1.比较两个整数a和b的大小,若a>b则返回1,若a==b则返回0,若a
2.求出数组a的n个元素中大于等于平均值的元素个数并返回。
3.从数组a的n个元素中求出最大值并返回。
1.doubleFI(intn){//n为大于等于1的整数
doublex,y=0;
do{
cin>>x;
y+=x*x;
}while(--n);
returny;
}
函数功能:
2.boolWE(inta[],intb[],intn){
for(inti=0;iif(a[i]!
=b[i])break;
if(i==n)returntrue;returnfalse;
}
函数功能:
3.intLK(inta[],intn){
doubles=0;
inti,m=0;
for(i=0;is=s/n;
for(i=0;i=s)m++;
returnm;
}
函数功能:
1.求出从键盘上输入的n个整数的平方和并返回。
2.判断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,否则返回假。
3.统计出数组a[n]中大于等于其平均值的元素个数并作为函数值返回。
1.boolWB(inta[],intn,intx){
for(inti=0;iif(a[i]==x)returntrue;
returnfalse;
}
函数功能:
2.intLJ(inta[],intn){
intk=0;
for(inti=1;iif(a[i]>a[k])k=i;
returna[k];
}
函数功能:
3.假定结构类型Dnode中的data域为结点值域,next域为结点指针域。
DNode*QB(intn)
{
if(n==0){returnNULL;}
DNode*f=newDNode;
cin>>f->data;
DNode*p=f;
while(--n){
p=p->next=newDNode;
cin>>p->data;
}
p->next=NULL;
returnf;
}
函数功能:
1.从数组a中顺序查找值为x的元素,若查找成功则返回真,否则返回假。
2.求出数组a中n个元素的最大值并返回。
3.建立一个具有n个结点的链表,每个结点的值依次由键盘输入,该函数返回其表头指针。
1.intSC(inta,intb,intc){
if(a>b)a=b;
if(a>c)a=c;
returna;
}
函数功能:
2.doubleWA(inta[],intn){
doubles=0;
for(inti=0;ireturns/n;
}
函数功能:
函数功能
1.求出a,b,c三个数中的最小值并返回。
2.求出数组a中n个元素的平均值并返回。