标签:文件 方式 min int max fout 使用 INF fin
示例题目:
数据统计
输入一些整数,求出它们的最小值、最大值和平均值(保留3位小数)。输入保证这些书都是不超过1000的整数。
样例输入:
2 8 3 5 1 7 3 6
样例输出:
1 8 4.375
1.使用输入输出重定向的方式
#define LOCAL #include<stdio.h> #define INF 100000000 int main() { #ifdef LOCAL freopen("data.in","r",stdin); freopen("data.out","w",stdout); #endif int x, n=0,min=INF,max=-INF,s=0; while(scanf("%d",&x)==1) { s += x; if(x<min) min = x; if(x>max) max = x; /* printf("x = %d, min= %d, max= %d\n",x,min,max); */ n++; } printf("%d %d %.3f\n", min,max,(double)s/n); return 0; } //重定向版本
如果比赛要求用文件输入输出,但禁止用重定向的方式,又当如何呢?
#include<stdio.h> #define INF 100000000 int main() { FILE *fin,*fout; fin = fopen("data.in","rb"); fout = fopen("data.out","wb"); int x,n=0,min = INF,max=-INF,s=0; while(fscanf(fin,"%d",&x)==1){ s += x; if(x<min) min=x; if(x>max) max = x; n++; } fprintf(fout,"%d %d %.3f\n",min,max,(double)s/n); fclose(fin); fclose(fout); return 0; } //如果比赛要求用文件输入输出,但禁止用重定向方式,可以如上的fopen方式
标签:文件,方式,min,int,max,fout,使用,INF,fin 来源: https://www.cnblogs.com/Vincent-yuan/p/12879484.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。