C语言113道题目(9)

2019-08-30 19:13

for(i=0;i<10;i++) for(j=i+1;j<10;j++) { t=a[i][j]; a[i][j]=a[j][i]; a[j][i]=t; } }

88.求∏值,精度为10-5:∏/4≈1-1/3+1/5-1/7+…… #include void main() {

float a=1.0,b; int i;

for(i=1;1.0/(2*i+1)>0.00001;i++) {

if(i%2!=0) a-=1.0/(2*i+1); else

a+=1.0/(2*i+1); }

b=4.0*a;

printf(\的值为:%f\\n\}

89.用公式计算:e≈1+1/1!+1/2! …+1/n!,精度为10-6。 #include float fun(int); void main() { int i;

float e=1.0;

for(i=1;fun(i)>0.00000001;i++) e+=fun(i); printf(\ }

float fun(int n) {

int i;

float term=1.0; for(i=1;i<=n;i++) term/=i; return term; }

90.有一分数序列

2/1,3/2,5/3,8/5,13/8,21/13 求该序列的前20项之和。 #include void main() { int i;

float a[22], b[20],p=0.0; a[0]=1.0; a[1]=1.0; for(i=2;i<22;i++) a[i]=a[i-1]+a[i-2]; for(i=0;i<20;i++) b[i]=a[i+2]/a[i+1]; for(i=0;i<20;i++) p+=b[i]; printf(\}

91.编一个子函数GCD,求两个正整数的最大公约数,主程序输入n个自然数,调GCD,求出这n个数的最大公约数。 #include int GCD(int,int); void main() {

int a[100],i,n,k;

printf(\请输入数组元素的个数:\\n\ scanf(\

printf(\请输入%d个正整数:\\n\ for(i=0;i

printf(\输入的%d个正整数的最大公约数是:%d\\n\}

int GCD(int x,int y) {

int i,min,p,q,gcd; if(x<=y) min=x; else min=y;

for(i=1;i<=min;i++) { p=x%i; q=y%i;

if(p==0&&q==0) gcd=i; }

return gcd; }

92.写函数求sin(x)的值。计算公式为:

Sin(x)=X-X3/3!+X5/5!-X7/7!+ …+(-1)n-1X2n-1/(2n-1)!。 #include float fun(float,int); float sin(int,float); float term(int); void main() { int n;

float x;

printf(\请输入n,x值:\\n\ scanf(\ scanf(\

printf(\}

float sin(int n,float x) { int i;

float s=0.0; for(i=1;i<=n;i++)

s+=fun(-1.0,i-1)*fun(x,2*i-1)*term(2*i-1);

return s; }

float fun(float x,int n) { int i; float p=1.0; for(i=0;i

float term(int n) { int i; float q=1.0; for(i=1;i<=n;i++) q/=i; return q; }

93.编一函数使用冒泡法对若干个整数按从小到大的顺序排序,主函数中输入若干个整数到一个一维数组中,调用排序函数,将其排序,最后将原数组和排好序的数组输出。 #include #define N 10 void main() {

int a[N],i,j,temp;

printf(\请输入10个整数:\\n\ for(i=0;i

printf(\原始数据为:\\n\ for(i=0;i

for(j=0;j<=N-i-1;j++) if(a[j]>a[j+1]) {

temp=a[j]; a[j]=a[j+1];

a[j+1]=temp; }

}

printf(\排序后的数据为:\\n\ for(i=0;i

94.求一个m行n列的二维数组中的这样一个原素;它在它所在的行为最大,在它所在的列为最小。

#include #define N 4 #define M 5 void main() {

int i,j,k,a[N]

,max,maxj,flag;

printf(\input matrix:\\n\

for(i=0;i

{ max=a[i][0]; maxj=0; for(j=0;jmax)

{ max=a[i][j]; maxj=j;

} flag=1; for(k=0;ka[k][maxj])

{ flag=0; continue;

} if(flag) {

printf(\


C语言113道题目(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:面向对象程序课程设计任务书

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: