1、第一套程序填空 给定程序中,函数 fun 的功能是:将形参 n 所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针 n 传回所指变量。如输入一个数:27638496,新的数为 729第一空: t=*n%10; 第二空:if(t%2!=0)第三空:*n=x;2.程序修改给定程序 modi1.c 中函数 fun 的功能是:计算 n!。例如,给 n 输入 5,则输出 120.000000。double fun(int n ) double result=1.0;/*found*/if(n=0)return 1.0;while(n1for(i=1;idat
2、a=rand()%m;s-next=p-next;p-next=s;p=p-next;/*found*/return h;3. 程序设计 请编写函数 fun,函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格格开,一行的开始没有空格。int fun(char *s)int k=1;while(*s) if(*s=)k+;s+; return k;第四套1. 程序填空 程序通过定义学生结构体变量,存储了学生的学号、姓名和 3 门课的成绩。所有学生数据均以二进制方式输出到文件中。函数 fun 的功能是从形参 file
3、name 所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到 filename 所指的文件中,覆盖原来的文件内容。第 1 处 fp = fopen(filename, “rb“);第 2 处 if (si.sno sj.sno)第 3 处 fwrite(s,sizeof(STU),N,fp);2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:在字符串的最前端加入 n 个*号,形成新串,差且覆盖原串。注意:字符串的长度最长允许为 79.void fun(char s ,int n)char a80,*p;int i;/*found*/p=
4、s;for(i=0;i10)bM-1+;else bj+;第五套1. 程序填空 给定程序中,函数 fun 的功能是将参数给定的字符串、整数、浮点数写到文件文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数 atoi 和 atof 将字符串换成相应的整数和浮点数,然后将其显示在屏幕上。第 1 处: FILE *fp;第 2 处:fclose(fp);第 3 处:fscanf(fp,”%s%s%s”,str,str1,str2);2.程序修改给定程序 MODI1.C 中函数 fun 的功能是:对 N 名学生的学生成绩,按从高到低的顺序找出前 m(mbj.s)j=i;/*found*/tk=
5、bj;bj.s=0;return t; 3. 程序设计请编写函数 fun,函数的功能是,删去一维数组中所有相同的数,使之只剩一个。数组中的数已按从小到大的顺序排序,函数返回删除后数组中数据的个数。int fun(int a ,int n)int i,j=1,k=a0;for(i=1;i/*found*/char *fun(char *s,char *t)int sl=0,tl=0;char *ss,*tt;ss=s; tt=t;while(*ss) sl+;/*found*/ss+;while(*tt) tl+;/*found*/tt+;if(tlsl) return t;else retur
6、n s;3. 程序设计请编写函数 fun,函数的功能是:移动字符串中的内容,移动的规则如下:把第 1 到第 m 个字符,平均移到字符串的最后,把第 m+1 个到最后的;字符移到字符串的前部。void fun(char *w, int m )int i;for(i=0;iam)m=k;t=ai;ai=am;am=t;3.程序设计请编写一个 unsigned fun(unsigned w),w 是一个大于 10 的无符号整数,若 w 是 n(n=2)位的整数,函数求出 w 的后 n-1 位的数作为函数值返回。例如:w 值为 5923,则函数返回 923;w 值为 923 则函数返回 23。unsi
7、gned fun( unsigned w ) if(w=10000) return w%10000;if(w=1000) return w%1000;if(w=100) return w%100;return w%10;第八套1. 程序填空 给定程序通过定义并赋值的方式,利用结构体变量存储了一名学生学号、姓名和 3 门课的成绩。函数 fun的功能是将该学生的各科成绩都乘以一个系统 a。第 1 处 void modify(STU *ss,float a )第 2 处 ss-scorei*=a;第 3 处 modify(2.程序修改给定程序 MODI1.C 中函数 fun 的功能是:求 k!,所求
8、阶乘的值作为函数值返回。例如:若 k=10,则应输出:3628800。long fun(int k)/*found*/if(k0)return (k*fun(k-1);/*found*/else if(k=0)return 1L;3.程序设计程序定义了 N*N 的二维数组,并在主函数中自动赋值。请编写函数 fun(int a N,int n),函数的功能是:使数组左下三角元素中的值乘以 n。int fun(int a N,int n) int i,j;for(i=0;inext;第 2 处 while(q)第 3 处 p=p-next;2.程序修改给定程序 MODI1.C 中函数 fun 的功
9、能是:将 s 所指字符串中的字母转换为按字母序列的后续字母(但 Z 转换为 A,z 转换成 a ),其它字符不变。void fun(char *s)/*found*/while(*s) if(*sAint i;for(i=2;inext;第 2 处 if (p=0) return;第 3 处 p=q; q=r;2.程序修改给定 MODI1.Cfun 函数的功能是:计算 s 所指字符串中含有 t 所指字符串的数目,并作为函数值返回。请改正函数 fun 中指定部位的错误,使它能得出正确的结果。# include # include #define N 80int fun(char *s, char
10、 *t)int n;char *p,*r;n=0;while (*s) p=s; /*found*/r=t;while (*r)if(*r=*p)r+;p+;else break;/*found*/if(*r=0)n+;s+;return n;3 程序设计请编写函数 fun,函数的功能是:将放在字符串数组中的 M 个字符串(每串的长度不超过 N),按顺序合并组成一个新的字符串,函数 fun 中给出的语句供供参考。void fun (char aMN),char *b)int i;*b=0;for(i=0;inext;第 3 处 q=r;2 程序修改给定程序 MODI1.C 中函数 fun 的功
11、能是:将 s 所指字符串中位于奇数位置的字符或 ASCII 码为偶数的字符放入 t 所指数组中(规定第一个字符放在第 0 位中)。#include#include#define N 80void fun(char *s,char t)int i,j=0;for(i=0;ivoid fun (int (*s)10,int *b, int *n, int mm, int nn)int i,j,np=0;for(i=0;inext;第 2 处 q=p-next;第 3 处 if(p-data=q-data)2 程序修改给定程序 MODI1.C 是建立一个带头结点的单向链表,并用随机函数为各结点数据域
12、赋值。函数 fun 的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。请改正函数 fun 中指定部位的错误,使它能得出正确的结果。fun ( NODE *h) int max=-1;NODE *p;/*found*/p=h-next;while(p) if (p-datamax)max=p-data;/*found*/p=p-next;return max;3 程序设计请编写函数 fun,函数的功能是:将 M 行 N 列的二维数组中的数据,按行的顺序依次放到一维数组中。一维数组中数据的个数存放在形参 n 所指的存储单元中。void fun( int (*s)10,i
13、nt *b, int *n, int mm, int nn)int i,j,k;for(i=0;inext;while (p)if(p-data%2=0)sum +=p-data;/*found*/p=p-next;return sum;3 程序设计请编写函数 fun,函数的功能是:判断字符串是否为回文?叵是,函数返回 1,主函数中输出:YEX,否则返回 0,主函数中输出 NO。回文是指顺读 t 和倒读都一样的字符串。int fun(char *str)int i,j=strlen(str);for(i=0;i=0)STREC *p;p=h-next;while(p) if(p-smax)ma
14、x=p-s;p=p-next;return max;第十六套1 程序填空给定程序中,函数 fun 的功能是:求出形参 ss 所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。Ss 所指字符串数组中共有 M 个字符串,且串长void fun(char *p)int k = 0;for( ; *p; p+ )if( k )/*found*/if( *p =)k = 0;/*found*/* (p-1)=toupper(*(p-1);elsek=1;3 程序设计请编写函数 fun,对长度为 7 个字符的字符串,除首、尾字符外,将其余 5 个字符 ASCII 码降
15、序排列。int fun(char *s, int num)char ch;int i,j;for(i=1;i0)2 程序修改给定程序 MODI1.C 中函数 fun 的功能是:在 p 所指字符串中找出 ASCII 码值最大的字符,将其放在第一个位置上;并将该字符前的原字符向后顺序移动。fun (char *p) char max, *q; int i=0;max=pi;while( pi!=0) if(maxp)*q=*(q-1);q-;p0=max;3 程序设计学生的记录由学号和成绩组成,N 名学生的数据已在主函数中放入结构体数组 s 中,请编写了函数 fun,它的功能是:把指定分数范围内的
16、学生数据放在 b 所指的数组中,分数范围内的学生人数由函数值返回。int fun (STREC *a, STREC *b,int l, int h)int i,j = 0;for(i=0;i=lreturn j;/*程序中 l 是用 L 的小写*/第十八套1 程序填空给定程序中,函数 fun 的功能是:将形参 s 所指字符串中的所有字母字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。第 1 处 tj=si;j+;第 2 处 for(i=0;ik;i+) tj+i=pi;第 3 处 tj+k=0;2 程序修改给定程序 MODI1.C 中函数 fun 的功能是:将 s 所指字
17、符串中最后一次出现的与 t1 所指字符串相同的子串替换成 t2 所指字符串,所形成的新串放在 w 所指的数组中。在此处,要求 t1 和 t2 所指字符串的长度相同。int fun (char *s, char *t1, char *t2, char *w)int i; char *p,*r,*a;strcpy( w,s );/*found*/while (*w) p=w;r=t1;while (*r)/*found*/if ( *r=*p )r+;p+;else break;if (*r=0)a=w;w+;r=t2;while (*r)*a=*r;a+;r+;3 程序设计函数 fun 的功能是:将 s 所指字符串中 ASCII 值为奇数的字符删除,串中剩余字符形成一个新串放在 t 所指的数组中。void fun (char *s, char t) int i,j=0;for(i=0;istrlen(s);i+)if(si%2=0)tj+=si;tj=0;