scanf(\
if(i<=0) printf(\else {j=k(i);
printf(\return 0;}} float k(n) int n; {float m;
if(n==1)m=1.0; else if(n%2==0) m=k(n-1)*2; else m=k(n-1)*3; return(m);}
5题:
/*求a与b值交换*/ #include
printf(\t=x;x=y;y=t;
printf(\return 0;} int main(void) {int a,b;
scanf(\printf(\exct(a,b);
printf(\
return 0;}
6题:
/*求排列组合*/ #include
for(i=1,s=1;i<=a;i++)s*=i; return(s);} int main(void) {long int n,m,y;
printf(\请输入排列组合的n和m:\\n\scanf(\for(;n {printf(\输入错误,n>m,请重新输入排列组合的n和m:\\n\scanf(\y=f(n)/(f(n-m)*f(m)); printf(\该排列组合的值为:%d\\n\return 0;} 实验七 数组 【目的与要求】 1.掌握数组的定义、赋值和输入输出的方法。 2.学习用数组实现相关的算法(如排序、求最大和最小值、对有序数组的插入等)。 【内容与过程】 1、有一个一维数组,在内放入10个学生的成绩, 写一个函数, 统计不及格的人数。(源程序以yourid7_1.c存盘) (要求用数组名作为实参) 1题: /*yourid7_1.c:*/ #include int scores[10]; printf(\请输入学生的成绩:\\n\ for(i=1;i<10;i++) scanf(\ printf(\不及格的分数有:\\n\ for(i=1,j=0;i<10;i++){if(scores[i]<60) j=(j+1),printf(\ printf(\不及格的共有%d人\\n\ 2.求矩阵a[2][3]的转置矩阵b[3][2],编写程序。(源程序以yourid7_2.c存盘) a= b= 2题: #include int a[2][3]={{1,2,3},{4,5,6}}; int b[3][2],i,j; printf(\ for (i=0;i<=1;i++) { for (j=0;j<=2;j++) { printf(\ b[j][i]=a[i][j]; } printf(\ } printf(\ for (i=0;i<=2;i++) { for (j=0;j<=1;j++) printf(\ printf(\ } } 4.编写一个多科学生成绩处理程序,具体要求如下:(源程序以yourid7_4.c存盘) ① 学生数和科目数均由键盘输入。 ② 学生成绩定义成二维数组进行处理,并由键盘按单科成绩逐个输入。 ③ 要求能统计出单科平均、个人平均、单科成绩等级百分比和个人名次。 ④ 数据以二维表格形式输出,输出内容有表头(提示信息)、表体(学号、单科成绩、个人平均、名次)和表尾(单科平均、等级百分比)。 4题: /*yourid_18.c:*/ #include for(s=10;s>=0;s--) {for(i=0;i {if(i==1||i==s)a[i]=1; else a[i]=b[i-1]+b[i]; b[i]=a[i]; printf(\ printf(\ return 0;} /*yourid_18.c:*/ #include for(s=0;s<=10;s++)