三屯河水库库容查询及进库流量计算程序

三屯河水库库容查询及进库流量计算程序三屯河水库库容查询及进库流量计算程序 三屯河水库水位库容查询程序 2 0 include stdio h include string h include stdlib h include math h define math h stdlib h string h stdio h

大家好,我是讯享网,很高兴认识大家。

三屯河水库库容查询及进库流量计算程序

/三屯河水库水位库容查询程序2.0*/ #include<stdio.h> #include<string.h> #include<stdlib.h> #include<math.h> #define QUIT 5 FILE *fp; main() { void check_water(); //通过水位查询库容 void check_kurong(); //通过库容查询水位 void liuliang(); //进出库流量计算 int menus(); //主界面 int code; printf("三屯河水库水情计算软件v2.0beta,2019年1月11日:\n"); printf("联系:\n"); while((code=menus())!=QUIT) { switch (code) { case 1: check_water(); //通过水位查询库容 break; case 2: check_kurong(); //通过库容查询水位 break; case 3: liuliang(); //进出库流量计算 break; case 4: ; printf("此功能暂未开放!敬请期待!\n"); break; default: ; printf("未完待续!\n"); break; } } } void check_water() { int flag; float kurong; float shuiwei; float sw; int status; printf("请输入当前水位,默认为小数点2位数,否则会出错例如(991.84):\n"); if((fp=fopen("d:\\shuiku\\sthkrqx.txt","r"))==NULL)//d:\\shuiku\\sthkrqx.txt文件存取位置,可以自己修改 { printf("can not open file!\n"); exit(0); } flag=0; while(!flag) { while((status=scanf("%f",&sw))!=1||(sw<991.84||sw>1037.94)) { if(status!=1) scanf("%*s"); printf("请输入正确的水位!\n"); } while(!feof(fp)) { fscanf(fp,"%f%f",&shuiwei,&kurong); if(sw==shuiwei) { printf("水位 库容\n"); printf("%.2f %.2f\n",shuiwei,kurong); flag=1; break; } } if (flag==0) printf("查无此值,请重新输入水位:\n"); rewind(fp); } fclose(fp); } //主界面 int menus(void) { int num; int status; printf("三屯河水库水情应用软件v2.0 beta:\n"); printf("1)水位查询库容: 2)库容查询水位:\n"); printf("3)进出库流量计算: 4)出库流量查询:\n"); printf("5)退出(quit):\n"); printf("请依据序号选择功能:\n"); while((status=scanf("%d",&num))!=1||(num<1||num>5)) { if(status!=1) scanf("%*s"); printf("请输入正确的序号\n"); } return num; } void check_kurong() { int flag; float kurong; float shuiwei; float sw; int status; printf("请输入当前库容,默认为小数点2位数,否则会出错例如(0.00):\n"); if((fp=fopen("d:\\shuiku\\krsw.txt","r"))==NULL)//d:\\shuiku\\krsw.txt文件存取位置,可以自己修改 { printf("can not open file!\n"); exit(0); } flag=0; while(!flag) { while((status=scanf("%f",&sw))!=1||(sw<0||sw>3000)) { if(status!=1) scanf("%*s"); printf("请输入正确的库容!\n"); } while(!feof(fp)) { fscanf(fp,"%f%f",&kurong,&shuiwei); if(sw==kurong) { printf("库容 水位\n"); printf("%.2f %.2f\n",kurong,shuiwei); flag=1; break; } } if (flag==0) printf("查无此值,请重新输入库容:\n"); rewind(fp); } fclose(fp); } void liuliang() { float qlast,qnow,v1,v2; double q,avin,avout; double vaverage(double v1,double v2); printf("请输入当前的库容:\n"); while((scanf("%f",&qnow))!=1||qnow<0) { printf("请输入正确的数字"); scanf("%*s"); } printf("请输入前一天的库容:\n"); while((scanf("%f",&qlast))!=1||qlast<0) { printf("请输入正确的数字"); scanf("%*s"); } printf("请输入前一天出库流量:\n"); while((scanf("%f",&v1))!=1||v1<0) { printf("请输入正确的数字"); scanf("%*s"); } printf("请输入前现在的出库流量:\n"); while((scanf("%f",&v2))!=1||v1<0) { printf("请输入正确的数字"); scanf("%*s"); } avout=vaverage(v1,v2); q=qnow-qlast; avin=q/(8.64)+avout; printf("出库流量1 出库流量2 库容1 库容2\n"); printf("%.2f %.2f %.2f %.2f\n",v1,v2,qlast,qnow); printf("平均进库 平均出库:\n"); printf("%.2f %.2f\n",avin,avout); } double vaverage(double v1,double v2) { double v; v=(v1+v2)/2; return v; } /三屯河水库水位库容查询程序2.0*/ 

讯享网
小讯
上一篇 2025-03-04 15:29
下一篇 2025-03-25 15:32

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/120987.html