大学IT网-www.daxueit.com-整理
for(i=0;i<strlen(s);i++)
{if(s=‘a’&s<=‘z’&s[i+1]==‘’ ‖s[i+1]==‘\\0’) n++;} return n;}
63: 第63题 请编写一个函数fun,它的功能是:计算并输出给定整数n的所有因子(不包括1与自身)之和。规定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;}
64: 第64题 请编写函数fun,其功能是:将s所指字符串中ascii值为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 答案:
void fun(char *s,char t[]) {int i,j=0,n; n=strlen(s); for(i=0;i<n;i++)
大学IT网-www.daxueit.com-整理
大学IT网-www.daxueit.com-整理
if(s%2==0) {t[j]=s; j++;} t[j]=‘\\0’;}
65: 第65题 请编写函数fun,其功能是:将两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的十位和千位上。 答案:
void fun(int a,int b,long *c)
{*c=(b)*1000+(a/10)*100+(b/10)*10+a;}
66: 第66题 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删除字符串中所有*号。在编写函数时,不得使用c语言提供的字符串函数。 答案:
void fun(char *a) {int i=0;char *p=a; while(*p) {if(*p!=‘*’) {a=*p; i++;} p++;}
大学IT网-www.daxueit.com-整理
大学IT网-www.daxueit.com-整理
a=‘\\0’;}
67: 第67题 学生的记录时由学号和成绩组成,n名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能时:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回(用于字符串比较的函数时strcmp)。 答案:
strec fun(strec*,char *b) {int i; strec h;
for(i=0;i<n;i++) if(strcmp(a.num,b)==0) {h=a; break; } else {h.num==\h.s=-1;} return h;}
68: 第68题 请编写函数fun,其功能时:计算并输出下列多项式的值:
sn=1+1/1!+1/2!+1/3!+1/4!+…+1/n! 答案:
大学IT网-www.daxueit.com-整理
大学IT网-www.daxueit.com-整理
sn=1+1/1!+1/2!+1/3!+1/4!+...+1/n! double fun(int n) {double t,sn=1.0; int i,j;
for(i=1;i<n;i++) {t=1.0;
for(j=1;j<=i;j++) t*j; sn+=1.0/t;} return sn;}
69: 第69题 请编写一个函数fun,它的功能时:求fibonacci数列中大于t的最小的一个数,结果由函数返回。其中fibonacci数列f(n)的定义为:
f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2) 答案:
f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2) int fun(int t) {int a=1,b=1,c=0,i; for(i=4;i<=t;i++) {if(c<t) {c=a+b; a=b;
大学IT网-www.daxueit.com-整理
大学IT网-www.daxueit.com-整理
b=c;} else break;} return c;}
70: 第70题 编写函数fun,它的功能时:计算并输出下列级数和: s=1/1*2+1/2*3+…+1/n(n+1) 答案:
double fun (int n) {double s=0.0; int i;
for(i=1;i<=n;i++) s=s+1.0/(i*(i+1)); return s;}
71: 第71题 请编写函数fun,其功能时:将两个两位数的正整数a、b合并形成一个整数放在c中,合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b的十位和个位整数依次放在c数的百位和个位上。 答案:
void fun(int a,int b,long *c)
{*c=(a)*1000+(b/10)*100+(a/10)*10+b;}
72: 第72题 请编写函数fun,其功能是:将s所指字符串中下标为偶数的字符删除,串中剩余字符形成新串放在t所指数组中。
大学IT网-www.daxueit.com-整理