题目53.txt
来自「c语言小程序100个」· 文本 代码 · 共 19 行
TXT
19 行
题目53:已知数据文件IN.DAT中存有300个四位数,并已调用读函数READDAT()把这些数存入数组A中.请编制一函数SVALUE(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序,最后调用写函数WRITEDAT()把数组b中的数输出到OUT.DAT文件.
例如:1239,9-1-2-3>0,则该数满足条件存入数组b中,且个数cnt=cnt+1.
8129,9-8-1-2<0,则该数不满足条件忽略。
注意:部分源程序已给出。
程序中已定义数组: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 (data-thou-hun-ten>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 + -
显示快捷键?