题目27.txt

来自「c语言小程序100个」· 文本 代码 · 共 22 行

TXT
22
字号
  题目27:已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,
请编制一函数jsvalue(),其功能是:求出千位数上的数减百位数减十位数上的数减个位数上的数大于零的个数cnt,
再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,
最后调用写函数writeDat()把结果输出到OUT.DAT文件。    例如:9123,9-1-2-3>0,
则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。
          9812,9-8-1-2<0,则该数不满足条件计算平均值pjz2.
   注意:部分源程序已给出。
   程序中已定义数组:a[300],已定义变量:cnt
   请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
---------------------
void jsValue() /*标准答案*/
{int I,thou,hun,ten,data,j;
for(I=0;I<300;I++)
 {thou=a[I]/1000;  hun=a[I]%1000/100;
  ten=a[I]%100/10;  data=a[I]%10;
  if (thou-hun-ten-data>0){b[cnt]=a[I];cnt++;}
 }
for(I=0;I<cnt-1;I++)
  for(j=I+1;j<cnt;j++)
   if(b[I]>b[j])
    {data=b[I]; b[I]=b[j]; b[j]=data;}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?