测量实习计算程序

上传人:kms****20 文档编号:41057699 上传时间:2018-05-28 格式:DOC 页数:8 大小:29KB
返回 下载 相关 举报
测量实习计算程序_第1页
第1页 / 共8页
测量实习计算程序_第2页
第2页 / 共8页
测量实习计算程序_第3页
第3页 / 共8页
测量实习计算程序_第4页
第4页 / 共8页
测量实习计算程序_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《测量实习计算程序》由会员分享,可在线阅读,更多相关《测量实习计算程序(8页珍藏版)》请在金锄头文库上搜索。

1、测量实习计算程序测量实习计算程序#include #include #include #include #include struct Qchar name5;/ 测点号float l;/ 中丝float dist;/ 视距int Cor;/ 观测角值int fixCor;/ 改正后角值float hCal;/ 计算值float il;/ i-lfloat h;/ 高差float D;/ 水平距离float H;/ 测点高程float referH;/ 参考数据(高程)P100;int FixCorner(int cor, int x)int outcor = 1;int fixcor3;in

2、t orgcor3;int inderr3;int temp;orgcor0 = cor % 100;orgcor1 = (cor - orgcor0) / 100) % 100;orgcor2 = (int)(cor / 10000);if (x = 0)inderr0 = x;inderr1 = 0;inderr2 = 90;elseinderr0 = 60 + x;inderr1 = 59;inderr2 = 89;if (inderr0+inderr1*100+inderr2*10000 = orgcor0)fixcor0 = inderr0 - orgcor0;elsefixcor0

3、 = inderr0 + 60 - orgcor0;if (inderr1 = 0)inderr1 = 59;inderr2 -= 1;elseinderr1 -= 1;if (inderr1 = orgcor1)fixcor1 = inderr1 - orgcor1;elsefixcor1 = inderr1 + 60 - orgcor1;inderr2 -= 1;fixcor2 = inderr2 - orgcor2;outcor *= (fixcor0 + fixcor1*100 + fixcor2*10000);return outcor;int main()int cpoint; /

4、 测点号int cnum;/ 测点数float i; / 仪器高int x;/ 指标差float hc;/ 测站高程int k = 0;FILE *fp;SYSTEMTIME st = 0;GetLocalTime(system(“color b0“);printf(“输入测站号:“);scanf(“%d“, printf(“输入测点数:“);scanf(“%d“, printf(“输入仪器高(dm):“);scanf(“%f“, printf(“输入指标差():“);scanf(“%d“, if (x 59)printf(“指标差过大!“);getch();exit(0);printf(“输

5、入测站高程(m):“);scanf(“%f“, for (int i=0; icnum; i+)sprintf(Pi.name, “C%d%02d“, cpoint, i+1);printf(“开始输入数据,输入 -1 -1 -1 修改上一组数据。n“);printf(“-n“);while (k cnum)printf(“输入 %s 中丝(dm)、视距(dm)和观测角:“, Pk.name);scanf(“%f%f%d“, if (Pk.l 0)k-;continue;Pk.fixCor = FixCorner(Pk.Cor, x);Pk.hCal = 5.0 * Pk.dist * sin

6、(2.0 / 180.0 * 3.1415926536 * (float)(int)(Pk.fixCor/10000) + (float)(int)(Pk.fixCor%10000)/100)/60.0 + (float)(Pk.fixCor%100)/3600.0);Pk.il = (i - Pk.l) / 10.0;Pk.h = Pk.hCal + Pk.il;Pk.D = 10.0 * Pk.dist * cos(3.1415926536 / 180.0 * (float)(int)(Pk.fixCor/10000) + (float)(int)(Pk.fixCor%10000)/100

7、)/60.0 + (float)(Pk.fixCor%100)/3600.0)* cos(3.1415926536 / 180.0 * (float)(int)(Pk.fixCor/10000) + (float)(int)(Pk.fixCor%10000)/100)/60.0 + (float)(Pk.fixCor%100)/3600.0);Pk.H = hc + Pk.h;Pk.referH = hc + Pk.il + 5.0 * Pk.dist * sin(2.0 / 180.0 * 3.1415926536 * (90.0 + x/3600.0 - (float)(int)(Pk.C

8、or/10000) - (float)(int)(Pk.Cor%10000)/100)/60.0 - (float)(Pk.fixCor%100)/3600.0);k+;fp = fopen(“out.txt“, “a+“);fprintf(fp, “测点t 改正后角值t 计算值(h)ti-lt 高差(h)t 水平距离(D)t 测点高程(H)t 参考高程n“);for (int i=0; icnum; i+)fprintf(fp, “%st%s%d%02d%02dt%.3ftt%.3ft%.3ftt%.3ftt%.3ftt%.3fn“, Pi.name, Pi.Cor/10000=90?“-“:“, (int)(Pi.fixCor/10000), abs(int)(Pi.fixCor%10000)/100), abs(Pi.fixCor%100), Pi.hCal, Pi.il, Pi.h, Pi.D, Pi.H, Pi.referH);fprintf(fp, “%d 月%d 日 %d:%d -endn“, st.wMonth,st.wDay,st.wHour,st.wMinute);fclose(fp);system(“notepad out.txt“);return 0;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号