级C语言程序设计题.docx

上传人:b****3 文档编号:3183101 上传时间:2022-11-19 格式:DOCX 页数:16 大小:32.29KB
下载 相关 举报
级C语言程序设计题.docx_第1页
第1页 / 共16页
级C语言程序设计题.docx_第2页
第2页 / 共16页
级C语言程序设计题.docx_第3页
第3页 / 共16页
级C语言程序设计题.docx_第4页
第4页 / 共16页
级C语言程序设计题.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

级C语言程序设计题.docx

《级C语言程序设计题.docx》由会员分享,可在线阅读,更多相关《级C语言程序设计题.docx(16页珍藏版)》请在冰豆网上搜索。

级C语言程序设计题.docx

级C语言程序设计题

C语言程序设计

请编写函数fun,其功能是:

找出2×M整型二维数组中最大元素的值,并将此值返回调用函数。

intfun(inta[][M])

{

inti,j,max=a[0][0];

for(i=0;i<2;i++)

for(j=0;j

if(max

max=a[i][j];

returnmax;

}

编写函数fun,其功能是:

根据以下公式求π的值(要求精度,即某项小于时停止迭代)。

程序运行后,若输入精度,则程序应输出为…。

doublefun(doubleeps)

{

doubles=,s1=;

intn=1;

while(s1>=eps)/*当某项大于精度要求时,继续求下一项*/

{s1=s1*n/(2*n+1);/*求多项式的每一项*/

s=s+s1;/*求和*/

n++;

}

return2*s;

}

编写函数fun,其功能是:

求出1~1000之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。

voidfun(int*a,int*n)

{

inti,j=0;

for(i=1;i<=1000;i++)/*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*/

if((i%7==0||i%11==0)&&i%77!

=0)

a[j++]=i;

*n=j;

}

规定输入的字符串中只包含字母和*号。

编写函数fun,其功能是:

删除字符串中所有的*号。

编写函数时,不得使用C语言提供的字符串函数。

例如,字符串中的内容为:

****A*BC*DEF*G*******,删除后字符串中的内容应当是:

ABCDEFG。

voidfun(char*a)

{

inti,j=0;

for(i=0;a[i]!

='\0';i++)

if(a[i]!

='*')

a[j++]=a[i];/*若不是要删除的字符'*'则留下*/

a[j]='\0';

}

规定输入的字符串中只包含字母和*号。

编写函数fun,其功能是:

将字符串中的前导*号全部删除,中间和尾部的*号不删除。

例如,字符串中的内容为:

"*******A*BC*DEF*G****",删除后字符串中的内容应当是:

"A*BC*DEF*G****"。

编写函数时,不得使用C语言提供的字符串函数。

voidfun(char*a)

{

char*p=a;

while(*p=='*')p++;/*指针p指向字符串第一个字母*/

for(;*p!

='\0';p++,a++)

*a=*p;/*从第一个字母开始,其后的字符都放入指针a所指的字符串中*/

*a='\0';/*在字符串最后加上字符串结束标识*/

}

假定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:

除了尾部的*号之外,将字符中的其它的*号全部删除。

形参p已指向字符串中最后的一个字母。

在编写函数时,不得使用C语言提供的字符串函数。

例如,字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容应当是ABCDEFG*******。

voidfun(char*a,char*p)

{

char*t=a;

for(;t<=p;t++)

if(*t!

='*')

*(a++)=*t;

for(;*t!

='\0';t++)

*(a++)=*t;

*a='\0';

/*在字符串最后加上字符串结束标识*/

}

规定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:

只删除字符前导和尾部的*号,串中字母间的*号都不删除。

形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中尾部*号的个数。

在编写函数时,不得使用C语言提供的字符串函数。

例如,字符串中的内容为:

"****A*BC*DEF*G*******",删除后,字符串中的内容应当是:

"A*BC*DEF*G"。

voidfun(char*a,intn,inth,inte)

{

inti,j=0;

for(i=h;i

a[j++]=a[i];

a[j]='\0';/*在字符串最后加上结束标识*/

}

规定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:

除了字符串前导的*号之外,将串中其它*号全部删除。

在编写函数时,不得使用C语言提供的字符串函数。

例如,字符串中的内容为:

****A*BC*DEF*G*******,删除后,字符串中的内容应当是:

****ABCDEFG。

voidfun(char*a)

{

inti=0;

char*p=a;

while(*p&&*p=='*')

{

a[i]=*p;

i++;

p++;

}

while(*p)

{

if(*p!

='*')

{a[i]=*p;i++;}

p++;

}

a[i]='\0';

}

规定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:

将字符串尾部的*号全部删除,前面和中间的*号不动。

例如,字符串中的内容为:

"****A*BC*DEF*G*******",删除后,字符串中的内容应当是:

"****A*BC*DEF*G"。

在编写函数时,不得使用C语言提供的字符串函数。

voidfun(char*a)

{

while(*a!

='\0')

a++;

a--;/*指针a指向字符串的尾部*/

while(*a=='*')

a--;/*指针a指向最后一个字母*/

*(a+1)='\0';/*在字符串最后加上结束标志符*/

}

规定输入的字符串中只包含字母和*号。

请编写函数fun,其功能是:

将字符串中的前导*号全部移到字符串的尾部。

例如,字符串中的内容为:

"*******A*BC*DEF*G****",移动后,字符串中的内容应当是:

"A*BC*DEF*G***********"。

在编写函数时,不得使用C语言提供的字符串函数。

voidfun(char*a)

{

inti=0,n=0;

char*p;

p=a;

while(*p=='*')/*判断*p是否是*号,并统计*号的个数*/

{

n++;p++;

}

while(*p)/*将前导*号后的字符传递给a*/

{

a[i]=*p;i++;p++;

}

while(n!

=0)

{

a[i]='*';i++;n--;

}

a[i]='\0';

}

编写函数fun,其功能是:

实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串的后面。

例如,分别输入下面两个字符串:

FirstString--

SecondString

程序输出:

FirstString--SecondString

voidfun(charp1[],charp2[])

{

inti,j;

for(i=0;p1[i]!

='\0';i++);

for(j=0;p2[j]!

='\0';j++)

p1[i++]=p2[j];

p1[i]='\0';

}

某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:

求出该学生的平均分,并放入记录的ave成员中。

例如,学生的成绩是:

76,,85,91,72,,,则他的平均分应为。

voidfun(STREC*a)

{

inti;

a->ave=;

for(i=0;i

a->ave=a->ave+a->s[i];/*求各门成绩的总和*/

a->ave/=N;/*求平均分*/

}

N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。

请编写函数fun,其功能是:

求出平均分,并由函数值返回。

例如,若学生的成绩是:

85 76 69 85 91 72 64 87,则平均分应当是:

doublefun(STREC*h)

{

doubleave=;

STREC*p=h->next;

while(p!

=NULL)

{ave=ave+p->s;

p=p->next;

}

returnave/N;

}

编写函数fun,其功能是:

将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。

例如,若输入17,则应输出:

4 6 8 9 10 12 14 15 16。

voidfun(intm,int*k,intxx[])

{

inti,j,n=0;

for(i=4;i

{for(j=2;j

if(i%j==0)break;

if(j

}

*k=n;/*返回非素数的个数*/

}

编写函数fun,其功能是:

求ss所指字符串中指定字符的个数,并返回此值。

例如,若输入字符串,输入字符为1,则输出3。

intfun(char*ss,charc)

{

inti=0;

for(;*ss!

='\0';ss++)

if(*ss==c)

i++;/*求出ss所指字符串中指定字符的个数*/

returni;

}

编写函数fun,其功能是:

计算n门课程的平均分,结果作为函数值返回。

例如:

若有5门课程的成绩是:

72,80,,55,则函数的值为:

floatfun(float*a,intn)

{

inti;

floatav=;

for(i=0;i

av=av+a[i];

return(av/n);/*返回平均值*/

}

学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:

把分数最高的学生数据放在b所指的数组中。

注意:

分数最高的学生可能不止一个,函数返回分数最高的学生的人数。

intfun(STREC*a,STREC*b)

{

inti,j=0,max=a[0].s;

/*找出最大值*/

for(i=0;i

if(max

for(i=0;i

if(max==a[i].s)

b[j++]=a[i];/*找出成绩与max相等的学生的记录,存入结构体b中*/

returnj;/*返回最高成绩的学生人数*/

}

编写函数voidfun(char*tt,intpp[]),统计在tt所指的字符串中'a'到'z'26个小写字母各自出现的次数,并依次放在pp所指的数组中。

例如,当输入字符串abcdefgabcdeabc后,程序的输出结果应该是:

33322110000000000000000000

voidfun(char*tt,intpp[])

{

inti;

for(i=0;i<26;i++)

pp[i]=0;/*初始化pp数组各元素为0*/

for(;*tt!

='\0';tt+

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 广告传媒

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1