---------------------- 第98题 题号:335
功能:求一个n位自然数的各位数字的积。(n 是小于10的 自然数) #include
long d,s=1; while (n>0) {d=n; s*=d; n/=10; }
return s;
---------------------- 第99题 题号:509
功能:编写函数fun其功能是:根据整型形参m,计算如下
公式的值:y=1+1/3+1/5+1/7+?+1/(2m+1)
例如:若m=9,则应输出:2.133256 #include
double fun(int m) {
double y=1; int i;
for(i=1; i<=m; i++) {y+=1.0/(2*i+1); } return(y);
---------------------- 第100题 题号:22
功能:从键盘为一维整型数组输入10个整数,调用fun
函数找出其中最小的数,并在main函数中输出。
请编写fun函数。 #include \void wwjt();
int fun(int x[],int n) {
int min,i; min=x[0];
for(i=1;i {if(x[i] ---------------------- 第101题 题号:377 功能:编写函数用选择排序法对数组中的数据进行从小到 大的排序。 #include void sort(int a[],int n) { int i,j,k,t; for(i=0;i for(j=i+1;j ---------------------- 第102题 题号:321 /功能:编写函数fun其功能是:根据整型形参m,计算如下 公式的值: y=1/2!+1/4!+?+1/m!(m是偶数) #include double fun(int m) { 答案:double y=0.0; int i,j; double s=1; for (i=2;i<=m;i+=2) { for(j=i-1;j<=i;j++) s=s*j; 21 y=y+1.0/s; } return y; 第103题 题号:328 功能:求k!(k〈13),所求阶乘的值作为函数值返回。 (要求使用递归) include long fun(int k) { if (k>0) return(k*fun(k-1)); else if(k==0) return 1L; ---------------------- 第104题 题号:354 功能:求小于lim的所有素数并放在aa数组中,该函数返回 所求出素数的个数。 #include int fun(int lim,int aa[MAX]) { int n=0; int i,j; for(i=2;i<=lim;i++) {for(j=2;j return n; 第105题 题号:325 功能:在键盘上输入一个3行3列矩阵的各个元素的值(值 为整数),然后输出主对角线元素的平方和,并在 fun()函数中输出。 #include main() { int i,j,s,a[3][3];; for(i=0;i<3;i++) { for(j=0;j<3;j++) scanf(\ } s=fun(a); printf(\ wwjt(); } int fun(int a[3][3]) { int sum; int i; sum=0; for(i=0;i<3;i++) sum=sum+a[i][i]*a[i][i]; return sum; 第106题 题号:390 功能:编写函数求1~100中奇数的平方和。结果为166650。 #include float sum(int n) { float s=0; int i; for(i=1;i<=n;i=i+2) s=s+i*i; return(s); 第107题 题号:396 功能:编写函数fun用比较法对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出 排序结果。 #include int fun(int array[], int n) 22 { int k,j,t; for (k=0;k if (array[k] t=array[k]; array[k]=array[j]; array[j]=t; } 第108题 题号:384 功能:产生20个[30,120]上的随机整数放入二维数组a[5][4] 中,求每行元素的和。 #include \#include void row_sum(int a[5][4],int b[5]) { int i,j; for(i=0;i<5;i++) { b[i]=0; for(j=0;j<4;j++) b[i]=b[i]+a[i][j]; } 第109题 题号:368 功能:求一分数序列2/1,3/2,5/3,8/5,13/8,21/13? 的前n项之和。 说明:每一分数的分母是前两项的分母之和,每一分数的 分子是前两项的分子之和 例如:求前20项之和的值为32.660259。 #include int i; float f1=1,f2=1,f3,s=0; for(i=1;i<=n;i++) {f3=f1+f2; f1=f2; f2=f3; s=s+f2/f1; } return s; 第110题 题号:452 功能:有一个一维数组score,内放10个学生的成绩,用一 个函数来求平均成绩。 个学生的成绩分别为92,87,68,56,92,84, 70,65,90,60 则平均成绩为:76.400000 #include float average (float array[10]) { int i; float aver,sum=array[0]; for(i=1;i<10;i++) sum=sum+array[i]; aver=sum/10; return aver; 第111题 题号:330 功能:计算出k以内最大的10个能被13或17整除的自然数之 和。(k〈3000)。 #include int fun(int k) { int a=0,b=0; while((k>=2)&&(b<10)) {if((k==0)||(k==0)) {a=a+k;b++;} k--; } return a; 第112题 题号:363 功能:求一个给定字符串中的字母的个数。 #include 23 s[]) return 0; } { int i,k=0; for(i=0;s[i]!='\\0';i++) if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z') k++; return k; ---------------------- 第113题 题号:315 功能:将主函数中输入的字符串反序存放。 例如:输入字符串“abcdefg”,则应输出“gfedcba”。 #include void fun(char *str,int n) { int i,j; char c; for(i=0,j=n-1;i for(i=0,j=n-1;i *(str+i)=*(str+j); *(str+j)=c;} 第114题 编写一程序,实现两个字符串的连接(不用strcat()函数)。 #include {int i,j; char a[10],b[10]; gets(a); gets(b);i=0,j=0; while(a[i]!='\\0')i++; while(b[j]!='\\0') a[i++]=b[j++]; a[i]='\\0'; b[j]='\\0'; printf(\ 24