文件的操作
来源:互联网 发布:k30平板荷载试验算法 编辑:程序博客网 时间:2024/06/13 23:12
/*
练习四
在文件Source.txt中存有若干个(个数<200)四位的正整数。要求:
1、读取这若干个正整数并存入数组xx中;
2、求出这个文件中共有多少个正整数totNum;
3、求出这些数中的各位数字之和是奇数的数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz;
4、最后把所求的结果输出到文件Dest.txt中。
以下数字是文件Source.txt中的数据
6045,6192,1885,3580,8544,6826,5493,8415,3132,5841,6561,3173,9 157,2895,2851,6082,5510,9610,5398,5273,3438,1800,6364,6892,95 91,3120,8813,2106,5505,1085,5835,7295,6131,9405,6756,2413,627 4,9262,5728,2650,6266,5285,7703,1353,1510,2350,4325,4392,7573, 8204,7358,6365,3135,9903,3055,3219,3955,7313,6206,1631,5869,5 893,4569,1251,2542,5740,2073,9805,1189,7550,4362,6214,5680,87 53,8443,3636,4495,9643,3782,5556,1018,9729,8588,2797,4321,471 4,9658,8997,2080,5912,9968,5558,9311,7047,6138,7618,5448,1466, 7075,2166
*/
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
/*此结构体定义了要从文件中取的数和逗号*/
struct node
{
int num;
char dou;
}shu;
int jishu() //函数作用:判断该数是否为奇数,如果为奇数则返回数字1,以便于在主函数中判断
{
int number_1 = 0; //用于存储数字各位相加之和,初始化为0
number_1=shu.num%10+(shu.num/100)%10+(shu.num/10)%100+(shu.num)/1000;
if((number_1%2)==1)
{
return 1;
}
else
return 0;
}
int main()
{
int number=0; //奇数相加之和
int totPjz=0; //算数平均值
int xx[200]; //存储数字的数组
int i=0; //文件中4位数字的个数
int totCnt=0; //奇数的个数
FILE *fp=NULL; //fp建立source.txt与内存的通道
FILE *fstream=NULL; //fstream建立Desk.txt与内存的通道
if((fp=fopen("c://Source.txt","r"))==NULL)
{
printf("can't open any file");
getch();
exit(1);
}
while(!feof(fp))
{
fscanf(fp,"%d%c",&shu.num,&shu.dou);
xx[i]=shu.num;
printf("%d",shu.num);
if(jishu()==1) /*jishu函数返回值为1为奇数*/
{
totCnt++; //用于计数
number+=shu.num; //算奇数的和用于接下来算平均值
}
i++;
}
totPjz=number/totCnt; //计算奇数的算数平均值
printf("一共有%d个正整数\n",i);
printf("一共有%d个奇数\n",totCnt);
printf("算数平均值是%d\n",totPjz);
/*将输出的结果写入Desk.txt文件中*/
if((fstream=fopen("c://Desk.txt","w"))==NULL)
{
printf("can't open any file");
getch();
exit(1);
}
fprintf(fstream,"%d,%d,%d",i,totCnt,totPjz);
fclose(fp);
fclose(fstream);
return 0;
}
- 文件操作文件的读入
- 文件操作文件的读入
- 文件与文件的操作
- 文件的操作
- 文件、文件夹的操作
- 对文件的操作
- CBuilder的文件操作
- 简单的文件操作
- 对文件的操作
- C的文件操作
- Javascript的文件操作
- 文件的相关操作
- ACE的文件操作
- ACE 的文件操作
- VB6的文件操作
- C的文件操作
- 文件操作的函数
- 文件的一些操作
- group by havding order by
- ios中的图标
- 图形验证码生成工具类
- js正则表达式大全
- tc-551-div2
- 文件的操作
- 基于libvirt API监测xen初探
- UTF-8 和 GBK 的 NSString 相互转化的方法
- 飞机座位(数组练习)
- 关于gdb debug android
- C++指针
- Tomcat Introduction
- Xen api 的层次结构
- 水题 Border