📄 1_pro.c
字号:
#include <stdio.h>
#include <conio.h>
#define MAXNUM 200
int xx[MAXNUM] ;
int totNum = 0 ; /*文件IN55.DAT中共有多少个正整数*/
int totCnt = 0 ; /*符合条件的正整数的个数*/
double totPjz = 0.0 ; /*平均值*/
int ReadDat(void) ;
void WriteDat(void) ;
void Calvalue(void)
{
int i,thou,hun,ten,data;
int ab;
long sum=0;
for(i=0;i<MAXNUM;i++)
{
if(xx[i]>0) totNum++; /*求正整数的个数*/
else break;
thou=xx[i]/1000; /*求四位数的千位数字*/
hun=xx[i]%1000/100; /*求四位数的百位数字*/
ten=xx[i]%100/10; /*求四位数的十位数字*/
data=xx[i]%10; /*求四位数的个位数字*/
ab=thou+hun+ten+data;
if (ab%2==0)
{ totCnt++; sum=sum+xx[i]; } /*统计各位数字之和是奇数的个数并累加求和*/
}
totPjz=sum/totCnt; /*求满足条件的数的平均值*/
}
void main()
{
int i ;
clrscr() ;
for(i = 0 ; i < MAXNUM ; i++) xx[i] = 0 ;
if(ReadDat())
{ printf("数据文件IN55.DAT不能打开!\007\n") ; return ; }
Calvalue() ;
printf("文件IN55.DAT中共有正整数=%d个\n", totNum) ;
printf("符合条件的正整数的个数=%d个\n", totCnt) ;
printf("平均值=%.2lf\n", totPjz) ;
WriteDat() ;
}
int ReadDat(void)
{
FILE *fp ;
int i = 0 ;
if((fp = fopen("IN55.DAT", "r")) == NULL) return 1 ;
while(!feof(fp))
fscanf(fp, "%d,", &xx[i++]) ;
fclose(fp) ;
return 0 ;
}
void WriteDat(void)
{
FILE *fp ;
fp = fopen("OUT55.DAT", "w") ;
fprintf(fp,"%d\n%d\n%.2lf\n", totNum, totCnt, totPjz);
fclose(fp) ;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -