void fun(char *w,int m) {
int i,j; char t;
for(i=1;i<=m;i++) {
t=w[0];
for(j=1;w[j]!='\\0';j++) w[j-1]=w[j];
w[j-1]=t; /*将第1个字符放到 最后一个字符中*/ } } main() {
FILE *fp;
char a[N]=\ int m;
printf(\50 程序设计题
请编写函数fun(),该函数的功能是:移动字符串中的内容,移动的规则是把第1~m个字符平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。
例如,字符串中原有的内容为ABCDEFGHIJK,m的值为3,移动后字符串中的内容应该是DEFGHI JKABC。 #include
void fun(char *w,int m) {
int i,j;
char t;
for(i=1;i<=m;i++) {
t=w[0];
for(j=1;w[j]!='\\0';j++) w[j-1]=w[j];
w[j-1]=t; /*将第1个字符放到 最后一个字符中*/ } }
main()
{
FILE *fp;
char a[N]=\ int m;
51 .程序设计题
请编写函数fun(),该函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从0到p(p≤n-1)的数组元素平移到数组的最后。
例如:一维数组中的原始内容为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15,p的值为3。移动后,一维数组中的内容应为5、6、7、8、9、10、11、12、13、14、15、1、2、3、4。 #include
void fun(int *w, int p, int n) {
int i,j,t;
for(i=0;i<=p;i++) /*循环左移p+1次*/ {
t=w[0];
for(j=1;j main() { int a[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int i,p,n=15; printf(\ for(i=0;i 52 序设计题 某学生的记录由学号、8门课成绩和平均分组成,学号和8门课的成绩已在主函数中给出。请编写fun()函数,它的功能是:求出该学生的平均分并放在记录的ave成员中。 例如,学生的成绩是85.5、76、69.5、85、91、72、64.5、87.5,则他的平均分应当是78.875。 #include void fun(STREC *p) { int i; (*p).ave =0.0; for(i=0;i (*p).ave =(*p).ave +(*p).s[i]; (*p).ave =(*p).ave /N; } main() { FILE *fp; STREC s={\ int i; fun(&s); 53 程序设计题 请编写一个函数int fun(char *str),用来删除字符串中的所有空格。 例如:输入asd af aa z67,则输出为asdafaaz67。 #include int i,j=0; for(i=0;str[i]!='\\0';i++) if(str[i]!=' ') str[j++]=str[i]; str[j]='\\0'; } main() { char str[81]; system(\ printf(\ gets(str); puts(str); fun(str); printf(\54 .程序设计题 请编一个函数float fun(double h),函数的功能是对变量h中的值保留两位小数,并对第三位进行四舍五入(规定h中的值为正数)。 例如:若h值为8.32433,则函数返回8.32;若h值为8.32533,则函数返回8.33。 #include float fun(float h ) { long t; t=(h*1000+5)/10; return (float)t/100; } main() { float a; system(\ printf(\ scanf(\ printf(\ \ printf(\ printf(\ result : %f\\n\ score(); } void score() { FILE *fp; float a[]={8.32433,8.32533}; fp=fopen(\ fprintf(fp,\ fclose(fp); } 55 程序设计题 请编写函数fun,它的功能是:求Fibonacci数列中大于a(a>3)的最小的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为: F(0)=0,F(1)=1 F(n)=F(m-1)+F(m-2) 例如,当a=500时,函数值为610。 #include int x=1,y=1,z=0,i; for(i=4;i<=a;i++) { if(z } else break; } return z; } main() { int m; FILE *out; m=500; printf(\ out=fopen (\ for(m=500;m<3000;m+=500) fprintf(out,\ fclose (out); } 56 .程序设计题 请编写函数fun(),该函数的功能是计算并输出: S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+N0.5) 例如,若主函数从键盘给n输入20后,则输出为s=534.188884。 #include 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; } main() { int n; double s; printf(\ 57 程序设计题 假定输入的字符串中只包含字母和*号。请编写函数fun(),它的功能是:使字符串中前部的*号不得多余n个;若多余n个,则删除多余的*号;若少于或等于n个,则什么也不做,