早教吧 育儿知识 作业答案 考试题库 百科 知识分享

求C语言高手。。帮忙解下题。。我都哭了。。1.从键盘输入12个整数,用起泡法对这12个整数进行由小到大的排序。2.有一分数序列如下,求出这个数列的前40项之和。2/1,3/2,5/3,8/5,13/8,2

题目详情
求C语言高手。。帮忙解下题。。我都哭了。。
1.从键盘输入12个整数,用起泡法对这12个整数进行由小到大的排序。
2.有一分数序列如下,求出这个数列的前40项之和。
2/1,3/2,5/3,8/5,13/8,21/13,……
3.从键盘输入10个整数保存在一个一维数组中,利用指针编写程序,将该数组中的10个整数按相反顺序存放。
4.有一个4×5的矩阵如下,求所有元素中的最大值、最小值及其相应的下标。
1 3 5 7 9
2 4 6 8 10
-5 -4 -3 -2 -1
15 17 19 21 0

5.用弦截法求方程f(x)=3x3+2x2-5x-6的根
6.用π/4≈1-1/3+1/5-1/7+∙∙∙公式求π的近似值,直到某一项的绝对值小于10-7为止。
7.利用指针编写程序,将数组a中n个整数按相反顺序存放。
8.通过循环按行顺序为一个5X5的二维数组a赋1~25的自然数,然后输出该数组的左下三角
▼优质解答
答案和解析
题目太多。你应分开来一个一个问。
给你回答4 个。问题7可以参照问题3 自己做。
#include
#include
void main(){
int a[12],t;
int i,j,n;
double f1,f2,f;
double term,sum;
int *p;
int b[4][5]={1,3,5,7,9,2,4,6,8,10,-5,-4,-3,-2,-1,15,17,19,21,0};
int big,small,bi,bj,si,sj;
printf("input 12 int data\n");
for (i=0;i<12;i++) scanf("%d",&a[i]);
for (i=0;i<11;i++) for (j=i+1;j<12;j++) if (a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;};
for (i=0;i<12;i++) printf("%d ",a[i]);
printf("\n===========\n");
sum=2.0+3.0/2;
f1=0.0;f2=1.0;
for (i=3;i<=40;i++){
f = f1+f2;
term = f / f2;
// printf("%d/%d +",(int) f,(int) f2);
sum = sum + term;
f1 = f2; f2 = f;
}
printf("sum=%lf\n",sum);
printf("\n===========\n");
p = &a[0];
n=10;
printf("input %d int data\n",n);
for (i=0;ifor (i=0;it = *(p+i); *(p+i) = *(p+9-i); *(p+9-i) = t;
}
for (i=0;iprintf("\n===========\n");
big = b[0][0]; small = b[0][0];
bi=0;bj=0;si=0;sj=0;
for (j=0;j<4;j++)
for (i=0;i<5;i++){
if (b[j][i] > big) {big=b[j][i];bi=i;bj=j;};
if (b[j][i] < small) {small=b[j][i];si=i;sj=j;}
};
printf("max b[%d][%d] = %d, min b[%d][%d] = %d\n",bj,bi,big,sj,si,small);
printf("\n===========\n");
}