1将s所指字符串中除了下标为奇数、同时ASCII值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在t所指的数组中。
2把形参str所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动
3将一个数字字符串转换为一个整数
4将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。
5将ss所指字符串中所有下标为奇数位置上的字母转换为大写
6统计一行字符串中单词的个数,作为函数值返回。
7删除一个字符串中指定下标的字符。orig指向原字符串,删除后存放在result所指中,flg 中存放指定的下标。
8统计一个长度为2的字符串在另一个字符串中出现的次数。
9移动字符串中的内容,移动的规则是把第1~m个字符平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。
10删除字符串中的所有空格。
11将s所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t所指数组中。12定字符出现的次数,并存到b数组中,其中:字符'+'、'-'、'*'、'/'、'&'出现的次数分别存放到b[0]、b[1]、b[2]、b[3]、b[4]中
13判断字符串是否为回文?返回1,主函数中输出:YES,否则返回0,主函数中输出NO。14将放在字符串数组中的M个字符串,按顺序合并组成一个新的字符串。
15对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCII码降序排列。16来删除字符串中的所有空格。
例如:输入的字符串是absd f aas z1o67,则输出为absdfaasz1o67。
17把s串中的内容逆置。
18删除一个字符串中指定的字符。设有如下的字符串:turbo c and borland vc++,
19将两个字符串连接(不得使用库函数strcat)把s2所指的字符串连接到s1所指字符串后。20统计在tt所指字符串中'a'到'z' 26个小写字母各自出现的次数,并依次放在pp所指数组中。
1它的功能是:将字符串中的前导*号全部移到字符串的尾部。
2除了字符串前导和尾部的*号之外,将串中其他*号全部删除
3将字符串中的前导*号全部删除,中间和尾部的*号不删除。
4使字符串中前部的*号不得多余n个;若多余n个,删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。
5将字符串尾部的*号全部删除,前面和中间的*号不删除。
6删除字符串中所有的*号。
7 除了尾部的*号之外,将字符串中其他*号全部删除。形参p已指向字符串中最后一个字母。char *t=a;
for(;t<=p;t++)
if(*t!='*') *(a++)=*t;
for(;*t!='\0';t++)
*(a++)=*t;
*a='\0';
1 int k,n=0;
for(k=0; k if(k%2==1 && s[k]%2==1) t[n++]=s[k]; t[n]='\0'; 2int i,n,j; char c; n=0; for(i=0;str[i]!='\0';i++) n++; if(n%2==0) j=n-1; else j=n-2; c=str[j]; for(i=j-2;i>=1;i=i-2) str[i+2]=str[i]; str[1]=c; 3 long t=0; int flag=1; if(*p=='-') { flag=-1; p++; } while(*p) { t=t*10+(*p-'0'); p++; } return flag*t; 4 int k,n=0; for(k=0; k if(k%2!=0||s[k]%2!=1) t[n++]=s[k]; t[n]='\0'; 5 int k; for(k=1;k if(ss[k]>='a'&&ss[k]<='z') ss[k]=ss[k]-'a'+'A'; 6 int i,j=0; for(i=0;s[i]!='\0';i++) if(s[i]!=' '&&(s[i+1]==''|| s[i+1]=='\0')) j++; return j; 7int n,m=0; for(n=0;n if(n!=flg) {result[m]=orig[n]; m++;} result[m]='\0'; 8int fun(char *str, char *substr) { int i,j=0; for(i=0;str[i+1]!='\0';i++) if(str[i]==substr[0]&& str[i+1]==substr[1]) j++; return j; 9int 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; } 10int i,j=0; for(i=0;str[i]!='\0';i++) if(str[i]!=' ') str[j++]=str[i]; str[j]='\0'; 11int i,j=0,k=strlen(s); for(i=1;i t[j++]=s[i]; t[j]='\0'; 12 int i; for(i=0; i<6; i++) b[i] = 0; for(i=0; i< strlen(a); i++) switch(a[i]) { case '+':b[0]++; break; case '-':b[1]++; break; case '*':b[2]++; break; case '/':b[3]++; break; case '&':b[4]++; break; default:b[5]++; 13 int i,j=strlen(str); for(i=0; i if(str[i]!=str[j-i-1]) return 0; return 1; 14 int i; *b=0; for(i=0; i strcat(b,a[i]); 15int i,j; for(i=1;i for(j=i+1;j if(str[i] { t=str[i]; str[i]=str[j]; str[j]=t;} 16 char *p=str; int i=0; while(*p) {if(*p!=' ') str[i++]=*p; p++; } str[i]='\0'; 17 char b[N]; int i=0,j; memset(b,0,N); for(j=strlen(s)-1;j>=0;j--) b[i++]=s[j]; strcpy(s,b); 18 char *p=s; int i=0; while(*p) {if(*p!=c) s[i++]=*p; p++;} s[i]=0; 19int i,n=strlen(s1),m=strlen(s2); for(i=0; i s1[n+i]=s2[i]; 20 int n; for(n=0; n<26; n++) pp[n]=0; while(*tt!='\0') { if(*tt>='a' && *tt <='z') pp[*tt-'a']++; tt++; } 1 int n=0,m=strlen(a),j=0,k=0; while(a[j]=='*') { n++;j++; } for(; j a[k++]=a[j]; for(j=0; j a[k++]=*'; a[k]='\0'; 2 char *q=h; int n=0; while(q<=p) { if(*q!='*') h[n++]=*q; q++; } while(*q) { h[n++]=*q; q++; } h[n]='\0'; 3int k=0,j=0,n=strlen(s); while(s[k]=='*') k++; for( ; k s[j++]=s[k]; 4 int i=0, k=0; char *p, *t; p=t=a; while(*t=='*') { k++; t++; } if(k>n) { while(*p) { a[i]=*(p+k-n); i++; p++; } a[i]='\0'; 5 while(*a!='\0') a++; a--; while(*a=='*') a--; *(a+1)='\0'; 6 int i,j=0; for(i=0;a[i]!='\0';i++) if(a[i]!='*') a[j++]=a[i]; a[j]='\0'; } 1使N×N的二维数组左下三角元素中的值乘以n。 2求出数组周边元素的平均值并作为函数值返回给主函数中的变量r。 3其功能是实现矩阵(3行3列)的转置(即行列互换 4其功能是求出二维数组周边元素之和 5实现B=A+A′,即把矩阵A加上A的转置,存放在矩阵B中。 6使数字右上半三角元素中的值乘以m。若m的值为2,a数组中的值为a=1 9/ 2 7 7使数组左下半三角元素中的值全部置成0。 8给数组周边元素置0。 9将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。 10使数组右上半三角元素中的值全部置0。 11tt是一个M行N列的二维数组,求出每列中最小元素,并依次放入pp数组中 1计算n门课程的平均分,计算结果作为函数值返回。 2 S=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…n) 3计算并输出3到m之间所有素数的平方根之和。 4计算并输出当x<0.97时如下多项式的值,直到|Sn - Sn-1|<0.000001 5 Fn=1+1/1!+1/2!+1/3!+1/4!+…+1/m! 6若主函数从键盘给m输入10后,则输出为F=104.478749 F=1+(1+根20+… 7 P=m!/(n!*(m-n)!) 8计算并输出给定整数n的所有因子(不包括1与自身)的平方和 9 S=1+(1+20.5)+(1+20.5+30.5) 10 S=1/(1×2)+1/(2×3)+…+1/(n×(n+1)) 11 计算并输出给定10个数的方差:F=14.982990 12 S=1+x+x2/2!+x3/3!+…+xn/n! 13 S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n) 14计算并输出给定10个数的方差。S=11.730729。 15 log(n)函数求ln(n)。 16 S=1+1/(1+2)+1/(1+2+3)+…. 1int j,k; for(j=0;j for(k=0;k a[j][k]*=n; 2int i,j,k=0; double r=0.0; for(j=0;j {r+=b[0][j]; k++;} for(j=0;j {r+=b[N-1][j]; k++;} for(i=1;i<=N-2;i++) {r+=b[i][0]; k++;} for(i=1;i<=N-2;i++) {r+=b[i][N-1]; k++;} return r/=k; 3 int j,k,t; for(j=0;j<3;j++) for(k=0;k { t=s[j][k]; s[j][k]=s[k][j]; s[k][j]=t;} 4int k,s=0; for( k=0; k s+=a[0][k]+a[M-1][k]; for( k=1; k s+=a[k][0]+a[k][N-1]; return s; 5 int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=a[i][j]+a[j][i]; 6 int i,j; for(i=0;i for(j=i;j a[i][j]=a[i][j]*m; } 7 int i,j; for(i=0;i for(j=0;j<=i;j++) a[i][j]=0; 8 int i; for(i=0;i { b[0][i]=0; b[N-1][i]=0; b[i][0]=0; b[i][N-1]=0; 9 int i, j, k; for(i=0; i for(j=0; j {k=i*M+j; b[k]=s[j][i]; } b[M*N]='\0'; 10 int i,j; for(i=0; i for(j=i; j a[i][j]=0; 11 int i,j; for(i=0; i pp[i]=tt[0][i]; for(i=1; i for(j=0; j if(pp[j]>tt[i][j]) pp[j]=tt[i][j]; 1 float s=0.0; int i; for(i=0; i s+=a[i]; return s/n; 2 float s=0.0; int t=0, k; for(k=1; k<=n; k++) { t+=k; s+=1.0/t; } return s; 3int n,k,i; double sum=0.0; for(n=3;n<=m;n++) { k=sqrt(n); for(i=2;i<=k;i++) if(n%i==0) break; if(i>=k+1) sum+=sqrt(n);} return sum; 4int n=1; double s0,s1=1.0,t=1.0; do {s0=s1; t=t*(0.5-n+1)*x/n; s1=s0+t; n++;}while(fabs(s1-s0)>=0.0000 01); return s1; 5 int k,y=0; for(k=2; k if(n%k==0) y+=k; return y; 6int i; double f=1.0,p=1.0; for(i=2;i<=m;i++) {p+=pow(i,0.5); f+=p; } return f; 7 float s=1.0; int k; for(k=n+1;k<=m;k++) s*=k; for(k=1;k<=(m-n);k++) s/=k; return s; 8 int i; long s=0; for(i=2;i if(n%i==0) s+=i*i; return s; 9double fun(int n) { 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; 10 int i; double s=0.0; for(i=1;i<=n;i++) s=s+1.0/(i*(i+1)); return s; 11int i,j; double f=0.0,f1=0.0; for(i=0;i<10;i++) f1+=y[i]; f1/=10; for(j=0;j<10;j++) f+=(y[j]-f1)*(y[j]-f1); f/=10; f=pow(f,0.5); return f; 12 int i; double s=1.0,s1=1.0; for(i=1; i<=n; i++) {s1=s1*i; s=s+pow(x,i)/s1; } return s; 13 int i; double s=0.0; for(i=1; i<=n; i++) s=s+(1.0/(2*i-1)-1.0/(2*i)); return s; 14 double x1=0.0,s=0.0; int i; for(i=0;i<10;i++) x1=x1+x[i]; x1=x1/10; for(i=0;i<10;i++) s=s+(x[i]-x1)*(x[i]-x1); return sqrt(s/10); 15int i; double f=0.0,log(double x); for(i=1;i<=n;i++) f=f+log(i); f=sqrt(f); return f; 16 int i,j,t; float s=0; for(i=1;i<=n;i++) { t=0; for(j=1;j<=i;j++) t+=j; s=s+1.0/t; return s 1单迭代方法求方程cos(y)-y=0的一个实根。Yn+1=cos(yn) 2,n是大于10的无符号整数若n是m(m≥2)位的整数,求出n的后m-1位的数为返回 3 求出1到m之间(含m)能被7或11整除的整数放在数组a中,n返回这些数的个数。 4 将两个三位数的正整数a、b合并形成一个长整数在c中。 5 将大于形参m且紧靠m的k个素数存入xx所指的数组中 6 将a、b两个两位正整数合并形成一个新的整数放在c中 7 把下标从0~p(含p,p小于等于n-1)的数组元素平移到数组的最后。 8统计各年龄段的人数把10~19岁段的人数放在d[1]中,把20~29岁年龄段的人数放在d[2] 9删去一维数组中所有相同的数,使之只剩一个。 10求出能整除y且是奇数的各整数,并按从小到大的顺序放在b所指的数组中 11将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回 12 要求把下标从0到p(p≤n-1)的数组元素平移到数组的最后。 13 对变量h中的值保留两位小数,并对第三位进行四舍五入 14 求Fibonacci数列中大于a(a>3)的最小的一个数,结果由函数返回 15形参b数组的前半部分和后半部分对换。形参n中存放数组中数据的个数,n为奇中间的不动。16s=(ln(1)+ln(2)+ ln(3)+…+ln(m))0.5的值。sqrt 17求出费波那其数列的第n项的值1,1,2,3,5,8,13 18一维数组元素中最大的值和它所在的下标,最大值和它所在的下标通过形参传回。 19 计算并输出m(包括m)以内能被3或7整除的所有自然数的倒数之和。 20 三个形参x、y、z中找出中间的那个数,作为函数值返回。 21 F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2)例如:t=1000时,函数值为987 22 是求出小于lim的所有素数并放在aa数组中,该函数返回所求出素数的个数。 23 求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,s = 134.465609。 24 找出一维数组中最小值和它所在的下标,最小值和所在的下标通过形参传回。min index 25 求出数组的最小元素在数组中的下标并存放在k所指的存储单元中。 26 删除bb中所有值为y的元素。Bb数组元素中的值和y的值由主函数通过键盘读入。 27 计算并输出给定数组(长度为5)中每相邻两个元素的平均值的平方根之和。 28 功能是保留h小数点后两位数,并对第三位进行四舍五入。h值为8.32433,返回8.320000;29移动一维数组中的内容;若数组中有n个整数,要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。 1找出学生的最高分,由函数返回。 2函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回 3 带头节点的链表结构中,h指向链表的头节点。找出学生的最低分,由函数值返回。 4把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。5低于平均分的学生数据放在b所指的数组中,低于平均分的人数通过n传回,平均分通过函数值返回。 6 找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分) 7 :按分数的高低排列学生的记录,高分在前。 8 求出该学生的平均分并放在记录的ave成员中。 9 求出平均分,由函数值返回。成绩是85、76、69、91、72、64、87,则平均分应当是78.625。10链表结构,h指向链表的头节点。函数fun,功能是:找出学生的最低分,由函数值返回。 1 do {y0=y1; y1=cos(y0);} while(fabs(y0-y1) >=1e-6); return y1; 2unsigned t,s=0,s1=1,p=0; t=m; while(t>10) {if(t/10) p=t%10; s=s+p*s1; s1=s1*10; t=t/10;} return s; 3 int k; *n=0; for(k=1; k<=m; k++) if(k%7==0||k%11==0) a[(*n)++]=k; 4 *c=a/100; *c=*c*10+b/100; *c=*c*10+(a/10)%10; *c=*c*10+(b/10)%10; *c=*c*10+a%10; *c=*c*10+b%10; 5 int j,n=0; while(n {m++; for(j=2; j if(m%j==0) break; if(j>=m) xx[n++]=m;} 6*c=a/10*100+a%10+ b/10*1000+b%10*10; 7 int j,k,t=0; for(j=0;j<=p;j++) { t=w[0]; for(k=1;k w[k-1]=w[k]; w[n-1]=t; 8 int i,j; for(j=0;j b[j]=0; for(i=0;i if(a[i]>=100) b[10]++; else b[a[i]/10]++; 9 int i,j=1; for(i=1;i if(a[j-1]!=a[i]) a[j++]=a[i]; return j; 10int j=1,i=0,k=0,*s=b; for(j=0;j<=y;j++) if(j%2!=0) {s[i]=j; i++;} for(j=0;j if(y%s[j]==0) {b[k]=s[j]; k++; } *m=k; 11 int i,j,n=0; for(i=2;i { for(j=2;j if(i%j==0) break; if(j xx[n++]=i;} *k=n; 12 int i,j,t; for(i=0;i<=p;i++) {t=w[0]; for(j=1;j w[j-1]=w[j]; w[j-1]=t; 13 long t; t=(h*1000+5)/10; return (float)t/100; 14 int x=1,y=1,z=0,i; for(i=4;i<=a;i++) { if(z {z=x+y; x=y; y=z; } else break;} return z; 15 int j,temp,p; p=(n%2==0) ? n/2:n/2+1; for(j=0;j {temp=b[j]; b[j]=b[p+j]; b[p+j]=temp; } 16 int i; double s=0.0; for(i=1;i<=m;i++) s=s+log((double)i); return sqrt(s); 17 if(n==1||n==2) return 1; else return fun(n-1)+fun(n-2); 18 int i; *max=a[0]; *d=0; for(i=0;i if(*max { *max=a[i];*d=i; } 19 int i; double sum=0.0; for(i=1;i<=m;i++) if(i%3==0||i%7==0) sum+=1.0/i; return sum; 20 int temp; temp=(a>b)?(b>c?b:(a> c?c:a)):((a>c)? a:((b>c)?c:b)); return temp; 21 int a=1,b=1,c=0; do { c=a+b; a=b; b=c; }while(c c=a; return c; 22 int i,j=0; for(i=2; i<=lim; i++) if(isP(i)) aa[j++]=i; return j; 23 int i; long s=0; double t; for(i=3;i if(i%3==0&&i%7==0) s+=i; t=sqrt(1.0*s); return t; 24 int i; *min=a[0]; *d=0; for(i=0;i if(a[i]<*min) {*min=a[i];*d=i;} 25 int i; *k=0; for(i=0;i if(s[*k]>s[i]) *k=i; return s[*k]; 26 int i, m=0; for(i=0; i<*n; i++) { if(bb[i]!=y) bb[m++]=bb[i]; } *n=m; 27 double sum=0.0; int i,j=1; for(i=0;i<5;i++) if(j<=4) {sum+=sqrt((a[i]+a[i+1 ])/2.0); j++;} return sum; 28 long w ; w=h*100+0.5; return(float)w/100; 29 int i,j=0,b[N]; for(i=p+1; i b[j++]=w[i]; for(i=0; i<=p; i++) b[j++]=w[i]; for(i=0; i w[i]=b[i]; 1 double max; STR *q=a; max=a->s; do {if(q->s>max) max=q->s; q=q->next;} while(q!=0); return max; 2 STREC fun(STREC*a,char*b) {STREC t={NULL,-1}; int k; for(k=0; k if(!strcmp(a[k].num,b)) return a[k]; return t;} 3 double min=h->s; while(h!=NULL) {if(min>h->s) min=h->s; h=h->next; } return min; 4 int k,n=0; for(k=0;k if(a[k].s>=l&&a[k].s<=h) b[n++]=a[k]; return n;} 5 int i,j=0; double av=0.0; for(i=0;i av=av+a[i].s; av=av/N; for(i=0;i if(a[i].s return av; 6 int i; *s=a[0]; for(i=0;i if(s->s *s=a[i]; 7:int i,j; STREC t;