📄 题目65.txt
字号:
题目65:已知在文件in.dat中存有若干个(个数<200)四位数字的正整数,函数readdat()读取这若干个正整数并存入数组xx中。请编制函数calvalue(),其功能要求:1、求出这文件中共有多少个正整数totnum;2、求出这些数中的各位数字之和是奇数的数的个数totcnt,以及满足此条件的这些数的算术平均值totpjz,最后调用函数writedat()把所求的结果输出到文件out.dat中。
注意:部分源程序已给出。
请勿改动主函数main()、读数据函数readdat()和输出数据函数writedat()的内容。
----------------------------
void CalValue(void) /*标准答案*/
{int I,thou,hun,ten,data;
for(I=0;I<MAXNUM;I++)
{if (!xx[I]) break;
if (xx[I]>0) totNum++;
thou=xx[I]/1000;
hun=xx[I]%1000/100;
ten=xx[I]%100/10;
data=xx[I]%10;
if ((thou+hun+ten+data)%2)
{totCnt++;totPjz+=xx[I];} }
totPjz/=totCnt;
}
或者:
void Calvalue(void)
{ int i,k,a,b,c,d;
for(i=0;i<MAXNUM;i++) if(xx[i]) totNum++;
for(i=0;i<totNum;i++)
{ a=xx[i]/1000;
b=(xx[i]%1000)/100;
c=(xx[i]%100)/10;
d=xx[i]%10;
k=a+b+c+d;
if(k%2)
{ totCnt++;
totPjz+=xx[i]; } }
totPjz/=totCnt;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -