s+=a[i][N-1]; }
return s; }
5: 请编写一个函数unsigned fun(unsigned w),w使一个大于10的无符号整数,若w使n(n≥2)位的整数,则函数求出w后n-1位的数作为函数值返回。 unsigned fun(unsigned w) {
unsigned t,s=0,s1=1,p=0; t=w;
while(t>10) {
if(t/10) p=t;
s=s+p*s1; s1=s1*10; t=t/10; }
return s; }
6: 请编写一个函数float fun(double h),函数的功能使对变量h中的值保留2位小树,并对第三位进行四舍五入(规定h中的值位正数)。 float fun(float h) {
long t; float s; h=h*1000; t=(h+5)/10;
s=(float)t/100.0; return s; }
7: 请编写一个函数fun(char *s),该函数的功能使把字符串中的内容拟置。 void fun(char *s) {
char ch; int I,m,n; i=0;
m=n=strlen(s)-1; while(i<(n+1)/2) {
ch=s[i]; s[i]=s[m]; s[m]=ch; i++;
m--; }
8: 编写程序,实现矩阵(3行3列)的转置(即行列互换)。 void fun(int array[3][3]) {
int I,j,temp; for(i=0;i<3;i++) for(j=0;j<I,j++) {
temp=array[i][j];
array[i][j]=array[j][i]; array[j][i]=temp; } }
9: 编写函数fun,该函数的功能是:从字符中删除指定的字符,同一字母的大、小写按不同字符处理。
void fun(char s[],int c) {
int i=0; char *p; p=s;
while(*p) {
if(*p!=c) {
s[i]=*p; i++; } p++; }
s[i]=‘\\0’; }
10: 编写函数int fun(int lim,int aa[max]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求的素数的个数。 int fun(int lim, int aa[MAX]) {
int k=0,I,j;
for(i=lim;i>1;i--) {
for(j=2;j<i;j++) if(i%j==0) break; else
continue;
if(j>=i) {
aa[k]=i; k++; } }
return k++; }
1: 请编写函数fun,对长度位7个字符的字符串,除首尾字符外,将其余5个字符按ascii码降序排列。
void fun(char *s,int num) {
char t; int I,j;
for(i=1;i<num-2;i++) for(j=i+1;j<num-1;j++) if(s[i]<s[j]) {
t=s[i]; s[i]=s[j]; s[j]=t; } } 2: n名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:找出学生的最高分,由函数值返回。 double fun(STREC *h) {
double max; STREC *q=h; max=h->s; do {
if(q->s>max) max=q->s; q=q->next; }
while(q!=0);
return max; }
3: 请编写函数fun,该函数的功能是:判断字符串是否为回文?若是则函数返回1,主函数中输出yes,否则返回0,主函数中输出no。回文是指顺读和倒读都是一样的字符串。 int fun(char *str) {
int I,n=0;fg=1; char *p=str; while (*p) { n++; p++; }
for(i=0;i<n/2;i++)
if (str[i]==str[n-1-i]); else { fg=0; break; }
return fg; }
4: 请编写一个函数fun,它的功能是:将一个字符串转换为一个整数(不得调用c语言提供的将字符串转换为整数的函数)。 long fun (char *p) {
long s=0,t;
int i=0,j,n=strlen(p),k,s1; if(p[0]==‘-’) i++;
for(j=I;j<=n-1;j++) {
t=p[j]-‘0’; s1=10;
for(k=j;k<n-1;k++) t*=s1; s+=t; }
if(p[0]==‘-’) return –s; else
return s; }
5请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用c语言提供的求字
符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。 char *fun(char *s,char *t) {
char *p,*t1=t,*s1=s; int n=0;m=0; while (*s1) { n++; s1++; }
while(*t1) { m++; t1++; }
if(n>=m) p=s; else p=t;
return p; }
6: 请编写一个函数fun,它的功能是:根据以下公式求x的值(要求满足精度0.0005,即某项小于0.0005时停止迭代):
x/2=1+1/3+1×2/3×5+1×2×3/3×5×7+1×2×3×4/3×5×7×9+?+1×2×3×?×n/3×5×7×(2n+1)
程序运行后,如果输入精度0.0005,则程序输出为3.14?。 double fun(double eps) {
double s; float n,t,pi;
t=1;pi=0;n=1.0;s=1.0; while((fabs(s))>=eps) {
pi+=s;
t=n/(2*n+1); s*=t; n++; }
pi=pi*2; return pi; }
7: 请编写一个函数fun,它的功能是:求除1到m之内(含m)能北7或11整除的所有整数放在数组a中,通过n返回这些数的个数。 void fun(int m, int *a, int *n)