这个VC程序你帮忙解释下
请补充程序,使得程序能实现以下功能:从文件IN.dat中读取200个整数至数组number中,求出奇数的个数cnt1和偶数的个数cnt2以及数组number下标为偶数的元...
请补充程序,使得程序能实现以下功能:
从文件IN.dat中读取200个整数至数组number中,求出奇数的个数cnt1和偶数的个数cnt2以及数组number下标为偶数的元素值的算术平均值ave(保留2位小数)。把结果cnt1、cnt2、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 i;
int cnt1, cnt2, number[N];
long j = 0;
float ave;
FILE *fw;
fw = fopen("OUT.dat", "w");
read_dat(number);
/**************************************/
/**************************************/
printf("\n\ncnt1=%d,cnt2=%d,ave=%6.2f\n", cnt1, cnt2, ave);
fprintf(fw, "%d\n%d\n%6.2f\n", cnt1, cnt2, ave);
fclose(fw);
}
答案:for (i=0, j=0, cnt1=0, cnt2=0; i<N; i++)
{ if (number[i]%2)
cnt1++;
else
cnt2++;
if (i%2 == 0)
j += number[i];
}
ave = (float)j/(N/2);
我只想知道这个答案应该放在哪个位置这个程序才能执行呢,这个是个南开上机题 展开
从文件IN.dat中读取200个整数至数组number中,求出奇数的个数cnt1和偶数的个数cnt2以及数组number下标为偶数的元素值的算术平均值ave(保留2位小数)。把结果cnt1、cnt2、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 i;
int cnt1, cnt2, number[N];
long j = 0;
float ave;
FILE *fw;
fw = fopen("OUT.dat", "w");
read_dat(number);
/**************************************/
/**************************************/
printf("\n\ncnt1=%d,cnt2=%d,ave=%6.2f\n", cnt1, cnt2, ave);
fprintf(fw, "%d\n%d\n%6.2f\n", cnt1, cnt2, ave);
fclose(fw);
}
答案:for (i=0, j=0, cnt1=0, cnt2=0; i<N; i++)
{ if (number[i]%2)
cnt1++;
else
cnt2++;
if (i%2 == 0)
j += number[i];
}
ave = (float)j/(N/2);
我只想知道这个答案应该放在哪个位置这个程序才能执行呢,这个是个南开上机题 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询