请补充完整程序,使得程序能实现以下功能: 从文件IN.dat中读取200个整数至数组number中,求出最大
请补充完整程序,使得程序能实现以下功能:
从文件IN.dat中读取200个整数至数组number中,求出最大数max及最大数的个数cnt和数组number中能被3整除或能被7整除的算术平均值ave(保留2位小数)。把结果max、 cnt、ave输出到OUT. dat文件中。
注意:部分程序、读数据函数read_ dat (int number[200])及输出格式已给出。
include <conio. h>
include <stdio. h>
define N 200
void read_ dat(int number[N])
{ int i, j;
FILE *fp;
fp = fopen("IN. dat", "r");
for (i=0; i<20; i++)
{ for (j=0; j<10; j++)
{ fscanf(fp, "%d,", &number[i*10+j]);
printf("%d ", number[i*10+j]);
}
printf ("\n");
}
fclose (fp);
}
void main ()
{ int cnt, number[N], max;
float ave;
FILE *fw;
int i, k; '
long j = 0;
fw = fopen("OUT.dat", "w");
read_ dat (number);
/ ************************************************ /
/ ************************************************ /
printf("\n\nmax=%d, cnt=%d, ave=%6.2f\n", max, cnt, ave);
fprintf(fw, "%d\n%d\n%6.2f\n", max, cnt, ave);
fclose (fw);
}
max = number[0]; for (i=1, k=0; iN; i++) { if (number[i] > max) max = number[i]; if (number[i]%3==0 || number[i]%7==0) { j += number[i]; k++; } } for (i=0, cnt=0; iN; i++) if (number[i] == max) cnt++; ave = (float) (j*100/k)/100; [解题思路] 用整型变量max保存数组number中元素的最大值,首先把数组number的第一个元素number[0]存入max中;然后在for循环语句中当循环变量i从1递增到N-1时, 对数组number中的每一个元素number[i]与max进行比较,如果表达式number[i]>max成立,则把数组元素number[i]的值存入变量max中;再用表达式number[i]%3==0|| number[i]%7==0判断number[i]能否被3或7整除,如果表达式结果值为真,则把数组元素 number[i]的值与变量j的值相加,同时计数变量k加1。退出循环后,变量max中的值就是数组number中元素的最大值,再用for循环语句对数组number中的每一个元素与max的值进行相等的判断,如果number[i]的值等于max,则计数变量cnt加1。最后用表达式 (float)(j*100/k)/100求得数组number中能被3整除或能被7整除的算术平均值。
(Ⅰ)设A为n阶方阵,E为n阶单位阵,问A满足什么条件时,存在n阶方阵B(≠E),使得AB=A?( 其他 2020-05-14 …
设A为n阶矩阵,若有n阶初等矩阵P1,P2,…,Pr,使P1,P2,…Pr(A,E)=(E,B), 数学 2020-05-14 …
求所有能使²/(200n-999)为正整数的正整数n(“我爱数学”夏令营竞赛题)求所有能使n²/( 数学 2020-05-17 …
求教数学题一道如果n是一个大于6的整数,那下面哪一个一定能被3整除?A.N*(N+5)(N-6)B 数学 2020-06-12 …
请问下面的经纬度数分别是哪些城市?107°E,6°S.96°E,17°N.90°E,23.5°N. 其他 2020-07-03 …
设A为n阶矩阵.若存在正整数m使Am=O,则称A为n阶幂零矩阵.现设A为n阶幂零矩阵,E为n阶单位 其他 2020-07-22 …
用数学归纳法证明“当n为正奇数时,xn+yn能被x+y整除”的第二步是()A.假使n=2k+1时正 数学 2020-08-01 …
A是n阶方阵,满足Am=E,其中m是正整数,E为n阶单位矩阵.今将A中n2个元素aij用其代数余子 其他 2020-08-03 …
求证e^i(4π/n)+e^i(8π/n)+...+e^i4(n-1)π/n+e^i(4nπ/n)= 数学 2020-11-01 …
1.证明100……01(0有2001个)是合数2.一个正整数加上50或减去31都是平房数,求所有这种 数学 2020-12-10 …