




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
《測繪程序設(shè)計(VC.net)》上機實驗報告(VisualC++.Net)實驗3數(shù)組、指針與函數(shù)班級:學號: 姓名: 序號: 二零一零年三月實驗3數(shù)組、指針與函數(shù)一、實驗?zāi)康?掌握數(shù)組的定義、引用及應(yīng)用方法。?掌握指針與動態(tài)數(shù)組。?掌握函數(shù)的定義、引用及應(yīng)用方法
實驗內(nèi)容1.求任意多邊形面積多邊形面積計算原理及算法233223443241141111p=—(x+x)(y—y)+—(x+x)(y—y)+—(x+x)(y—y)+—(x+x)(y—y)212212面積計算的算法:經(jīng)整理后得:p=丄£(X+X)(Y—Y) (i=1,2, ,n;當i=n時,i+1=1)2 i+1 ii+1ii二1設(shè)計思路:因為計算多邊形面積的數(shù)據(jù)隨多邊形頂點數(shù)的增加而增加,因此要編寫一個分割字符串的函數(shù),使輸入的數(shù)據(jù)第一行表示多邊形類型,接下來的每一行依次表示一個頂點的坐標,X與Y之間用逗號隔開。創(chuàng)建一個二維數(shù)組,行數(shù)即頂點個數(shù),列數(shù)為2,用來保存各頂點的坐標。調(diào)用Split函數(shù)分離,獲取各頂點坐標數(shù)據(jù)界面設(shè)計:由1個靜態(tài)框、2個文本框和2個命令按鈕組成。其中文本框的屬性列表為:IDMultilineWantReturn添加變量名IDC_EDIT1TrueTruestrCoordDataIDCEDIT2TrueTruestrResult具體見運行結(jié)果的輸出界面主要代碼:ComAreaDlg.cppvoidCComAreaDlg::OnBnClickedCancel(){//TODO:在此添加控件通知處理程序代碼OnCancel();}CString*CComAreaDlg::SplitString(CStringstr,charsplit,int&iSubStrs){intiPos=0;//分割符位置intiNums=0;//分割符的總數(shù)CStringstrTemp=str;CStringstrRight;//先計算子字符串的數(shù)量while(iPos!=-1){iPos=strTemp.Find(split);if(iPos==-1){break;}strRight=strTemp.Mid(iPos+1,str.GetLength());strTemp=strRight;iNums++;}if(iNums==0)//沒有找到分割符{//子字符串數(shù)就是字符串本身iSubStrs=1;returnNULL;}//子字符串數(shù)組iSubStrs=iNums+1;//子串的數(shù)量=分割符數(shù)量+1CString*pStrSplit;pStrSplit=newCString[iSubStrs];strTemp=str;CStringstrLeft;for(inti=0;i<iNums;i++){iPos=strTemp.Find(split);//左子串strLeft=strTemp.Left(iPos);//右子串strRight=strTemp.Mid(iPos+1,strTemp.GetLength());strTemp=strRight;pStrSplit[i]=strLeft;}pStrSplit[iNums]=strTemp;returnpStrSplit;}voidCComAreaDlg::OnBnClickedButton1(){//TODO:在此添加控件通知處理程序代碼UpdateData(TRUE);intiLine;//分行并存入字符串數(shù)組CString*pstrLine=SplitString(strCoordData,13,iLine);if(iLine<4){MessageBox(_T("輸入的數(shù)據(jù)不完整!"));return;}intiApexCount=iLine-l;//多邊形頂點個數(shù)shortnpolygonType;//多邊形類型,double(*cApex)[2];cApex=newdouble[iApexCount][2];//頂點坐標值CString*strTmp=NULL;intn;npolygonType=_ttoi(pstrLine[0]);//第一行為多邊形類型//逐行用Split函數(shù)分離,獲取各頂點坐標數(shù)據(jù)for(inti=0;i<iApexCount;i++){
strTmp=SplitString(pstrLine[i+l],',',n);//分割第三行cApex[i][0]=_tstof(strTmp[0]);cApex[i][1]=_tstof(strTmp[1]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}}if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}doubleArea=0.0;//多邊形面積for(inti=0;i<iApexCount;i++){if(i==iApexCount-1){//i+1=0;Area=Area+(0.5)*(cApex[0][0]+cApex[i][0])*(cApex[0][1]-cApex[i][1]);}else//計算面積Area=Area//計算面積+(0.5)*(cApex[i+1][0]+cApex[i][0])*(cApex[i+1][1]-cApex[i][1]);}//輸出結(jié)果strResult.Format(_T("%s%.1fmm\r\n"),_T("面積S=:"),Area);//_T("序號"),_T("調(diào)整后H(m)"));UpdateData(FALSE);//釋放內(nèi)存if(cApex!=NULL){delete[]cApex;cApex=NULL;delete[]cApex;cApex=NULL;}運行結(jié)果:}運行結(jié)果:}2.由三角形三個邊長求內(nèi)角函數(shù)計算公式:b2+c2-a2cosA= 2bca2+c2-b2cosB=—2aca2+b2-c2cosC=2ab設(shè)計思路:已知三角形三個邊長求三角形三個內(nèi)角算法簡單,需要的數(shù)據(jù)也少,順序結(jié)構(gòu)即可實現(xiàn)。為了更加熟悉函數(shù)的調(diào)用,我編寫了一個函數(shù)計算三內(nèi)角,在計算的主程序中調(diào)用它就可以達到效果。函數(shù)的返回值不能為多值,因此形參中我用了引用做函數(shù)參數(shù)。
界面設(shè)計:界面很簡單,三個文本框輸入已知的三條邊長,三個文本框輸出所求結(jié)果。具體見運行結(jié)果的輸出界面主要代碼SolveTriangleDlg.cppconstdoublePI=3.1415926;//將弧度轉(zhuǎn)化成度分秒形式doubleRad_To_Dms(doubleRad){doubledDeg,dDms;//十進制角度及度分秒格式角度,控制變量//用于存放度分秒三個值的變量intiDegree,iMin;doubledSec;doubledTmp;dDeg=Rad*180/PI;//弧度轉(zhuǎn)化為度//度轉(zhuǎn)化成度分秒iDegree=int(dDeg);dTmp=(dDeg-iDegree)*60;iMin=int(dTmp);dSec=(dTmp-iMin)*60;dDms=iDegree+double(iMin)/100+dSec/10000;returndDms;}//已知三角形三邊長,求三內(nèi)角voidSolveTriangle(doublea,doubleb,doublec,double&A,double&B,double&C){///doubledAngle[3]={0,0,0};A=acos((b*b+c*c-a*a)/(2*b*c));B=acos((a*a+c*c-b*b)/(2*a*c));C=acos((a*a+b*b-c*c)/(2*a*b));}voidCSolveTriangleDlg::OnBnClickedButton1(){//TODO:在此添加控件通知處理程序代碼UpdateData(TRUE);/*double*dAngle;dAngle=*/SolveTriangle(a,b,c,A,B,C);A=Rad_To_Dms(A);B=Rad_To_Dms(B);C=Rad_To_Dms(C);UpdateData(FALSE);}voidCSolveTriangleDlg::OnBnClickedCancel(){//TODO:在此添加控件通知處理程序代碼OnCancel();}voidCSolveTriangleDlg::OnBnClickedOk(){//TODO:在此添加控件通知處理程序代碼OnOK();}運行結(jié)果:
3.由已知平面外接圓上三點坐標計算圓心坐標函數(shù)3.由已知平面外接圓上三點坐標計算圓心坐標函數(shù)計算公式為:(b-c)y+(c-a)y+(a-b)y12 32gy0■2y0■22ga=x2+y2;b=x2+y2;c=x2+y21 1 2 2 3 3g=(y3一y2)x1+(y1-y/x2+(y2-yJx3設(shè)計思路:已知三角形三個邊長求三角形三個內(nèi)角算法簡單,需要的數(shù)據(jù)也少,順序結(jié)構(gòu)即可實現(xiàn)。為了更加熟悉函數(shù)的調(diào)用,我編寫了一個函數(shù)計算三內(nèi)角,在計算的主程序中調(diào)用它就可以達到效果。函數(shù)的返回值不能為多值,因此形參中我用了引用做函數(shù)參數(shù)。界面設(shè)計:界面很簡單,三個文本框輸入已知的三條邊長,三個文本框輸出所求結(jié)果。具體見運行結(jié)果的輸出界面主要代碼:
文件ComputeCoordinateDlg.cpp文件voidCComputeCoordinateDlg::OnBnClickedButton1(){//TODO:在此添加控件通知處理程序代碼UpdateData(TRUE);doublea,b,c;doubleg;a=X1*X1+Y1*Y1;b=X2*X2+Y2*Y2;c=X3*X3+Y3*Y3;g=(Y3-Y2)*X1+(Y1-Y3)*X2+(Y2-Y1)*X3;Xo=((b-c)*Y1+(c-a)*Y2+(a-b)*Y3)/(2*g);Yo=-((b-c)*X1+(c-a)*X2+(a-b)*X3)/(2*g);UpdateData(FALSE);}運行結(jié)果:
制ComputeCoordinateXI=100X2= 500X3=2001Yl=iaoY2= 300Y3=500-2&4.2B5714ZYo=271.4285714計算退出輸入位于圓上的三個點的坐標,求圓心坐標。4.極坐標法求待定點坐標函數(shù)設(shè)計思路:1)編寫度分秒及弧度之間相互轉(zhuǎn)換的函數(shù)、方位角計算的函數(shù)2)求線段AB的方位角。3)求線段AP的方位角,并轉(zhuǎn)化為弧度。4)根據(jù)極坐標法求待定點P的坐標。界面設(shè)計:界面很簡單,8個文本框,8個靜態(tài)框和三個命令按鈕。具體見運行結(jié)果的輸出界面主要代碼:文件PolarCoordinatesDlg.cppconstdoublePI=3.1415926;//將弧度轉(zhuǎn)化成度分秒形式doubleRad_To_Dms(doubleRad){doubledDeg,dDms;//十進制角度及度分秒格式角度,控制變量//用于存放度分秒三個值的變量intiDegree,iMin;doubledSec;doubledTmp;dDeg=Rad*180/PI;//弧度轉(zhuǎn)化為度//度轉(zhuǎn)化成度分秒iDegree=int(dDeg);dTmp=(dDeg-iDegree)*60;iMin=int(dTmp);dSec=(dTmp-iMin)*60;dDms=iDegree+double(iMin)/100+dSec/10000;returndDms;}//將度分秒形式轉(zhuǎn)化為弧度doubleDms_To_Rad(doubledDms){intiDegree,iMin;doubledSec; //分別用于存放度、分、秒值的變量doubledDeg;//十進制角度,控制變量doubledRad; //弧度iDegree=int(dDms);//截取度iMin=int((dDms-iDegree)*100);//截取分dSec=((dDms-iDegree)*100-iMin)*100;//獲取秒dDeg=iDegree+double(iMin)/60+dSec/3600;//先把分秒轉(zhuǎn)化成度,再相加dRad=dDeg*PI/180;//轉(zhuǎn)化為弧度returndRad;}//計算方位角的函數(shù)doubleTriAzimuth(doubleX1,doubleY1,doubleX2,doubleY2){doubledx,dy;doubleA;//角度,控制變量dx=X2-X1;dy=Y2-Y1;if(dx>0){if(dy>0)A=atan(dy/dx); //A為第一象限角elseif(dy<0)A=atan(dy/dx)+2*PI; //A為第四象限角elseA=0; //A=0度}elseif(dx<0){if(dy>0)A=atan(dy/dx)+PI;//A為第二象限角elseif(dy<0)A=atan(dy/dx)+PI;//A為第三象限角elseA=2*PI; //A=180度}else{if(dy>0)A=PI; //A=90度elseif(dy<0)A=3*PI; //A=270度elseA=0;}A=Rad_To_Dms(A); //將弧度轉(zhuǎn)化為度分秒形式returnA;}voidCPolarCoordinatesDlg::OnBnClickedButton1(){//TODO:在此添加控件通知處理程序代碼UpdateData(TRUE);doubleaab,aap;aab=TriAzimuth(Xa,Ya,Xb,Yb);//反算AB的方位角aap=aab+卩; //求AP的方位角aap=Dms_To_Rad(aap); //轉(zhuǎn)化為弧度Xp=Xa+Dap*cos(aap);Yp=Ya+Dap*sin(aap);UpdateData(FALSE);voidCPolarCoordinatesDlg::OnBnClickedOk(){//TODO:在此添加控件通知處理程序代碼OnOK();}voidCPolarCoordinatesDlg::OnBnClickedCancel(){//TODO:在此添加控件通知處理程序代碼OnCancel();}運行結(jié)果:5.交會定點計算函數(shù)設(shè)計把前面學過的前方交會、測邊交會、后方交會程序?qū)懗珊瘮?shù)的形式,然后再通過主程序調(diào)用設(shè)計思路:該程序內(nèi)容多,代碼繁瑣,應(yīng)用的函數(shù)也多,因此先添加了一個項,用來存儲功能函數(shù),如度分秒向度轉(zhuǎn)換的函數(shù)、計算前方交會的函數(shù)、計算測邊交會的函數(shù)、計算后方交會的的函數(shù)。該程序需實現(xiàn)三種交會方式,因此要用到選擇結(jié)構(gòu)。定義一個變量iMethod,當它分別為1、2、3時分別執(zhí)行前方交會、測邊交會、后方交會。調(diào)用Split函數(shù)分離,獲取觀測數(shù)據(jù)。界面設(shè)計:界面比較復(fù)雜,有四個文本框,一個文本框添加了double型變量iMethod,用來選擇交會方式,一個文本框用來輸入觀測數(shù)據(jù),其具體屬性為:IDMultilineWantReturn添加變量名IDCEDIT2TrueTruestrObsData其它兩個文本框用來輸出待定點坐標,添加的變量皆為double型。主要代碼:文件1Fun.h#pragmaoncedoubleDms_To_Rad(doubledDms);voidForwardlntersection(doubleX1,doubleY1,doubleX2,doubleY2,doublea,double卩,double&X,double&Y);voidSideIntersection(doubleXa,doubleYa,doubleXb,doubleYb,doubleDap,doubleDbp,double&X,double&Y);voidResection(doubleXa,doubleYa,doubleXb,doubleYb,doubleXc,doubleYc,doublea,double0,doubley,double&X,double&Y);文件2Fun.cpp#include"stdafx.h"#include"Fun.h"#include<math.h>constdoublePI=3.1415926;//將度分秒形式轉(zhuǎn)化為弧度doubleDms_To_Rad(doubledDms){intiDegree,iMin;doubledSec; //分別用于存放度、分、秒值的變量doubledDeg; //十進制角度,控制變量doubledRad; //弧度iDegree=int(dDms);//截取度iMin=int((dDms-iDegree)*100);//截取分dSec=((dDms-iDegree)*100-iMin)*100;//獲取秒dDeg=iDegree+double(iMin)/60+dSec/3600;//先把分秒轉(zhuǎn)化成度,再相加dRad=dDeg*PI/180; //轉(zhuǎn)化為弧度returndRad;}//前方交會函數(shù)voidForwardlntersection(doubleXI,doubleY1,doubleX2,doubleY2,doublea,double卩,double&X,double&Y){a=Dms_To_Rad(a);//將度分秒轉(zhuǎn)化為弧度P=Dms_To_Rad(p);X=(Xl/tan(卩)+X2/tan(a)+(Y2-Yl))/(l/tan(a)-l/tan(卩));Y=(Yl/tan(卩)+Y2/tan(a)+(Xl-X2))/(l/tan(a)-l/tan(卩));}//測方交會程序voidSideIntersection(doubleXa,doubleYa,doubleXb,doubleYb,doubleDap,doubleDbp,double&X,double&Y){doublea,卩;//角度變量,存儲角度BAP的弧度值doubleDab;//AB兩點間的距離Dab=sqrt((Xb-Xa)*(Xb-Xa)+(Yb-Ya)*(Yb-Ya));a=acos((Dab*Dab+Dap*Dap-Dbp*Dbp)/(2*Dab*Dap));P=acos((Dab*Dab+Dbp*Dbp-Dbp*Dbp)/(2*Dab*Dbp));X=(Xa/tan(卩)+Xb/tan(a)+(Yb-Ya))/(l/tan(a)-l/tan(卩));Y=(Ya/tan(卩)+Yb/tan(a)+(Xa-Xb))/(l/tan(a)-l/tan(卩));}//后方交會voidResection(doubleXa,doubleYa,doubleXb,doubleYb,doubleXc,doubleYc,doublea,double卩,doubley,double&X,double&Y){doublea,b,c; //邊長doublePa,Pb,Pc;//權(quán)值變量doubleA,B,C;//存儲三個內(nèi)角值的變量a=Dms_To_Rad(a);P=Dms_To_Rad(p);Y=Dms_To_Rad(Y);//P1,P2,P3為觀測角//求三角形邊長a=sqrt((Xc-Xb)*(Xc-Xb)+(Yc-Yb)*(Yc-Yb));b=sqrt((Xc-Xa)*(Xc-Xa)+(Yc-Ya)*(Yc-Ya));c=sqrt((Xb-Xa)*(Xb-Xa)+(Yb-Ya)*(Yb-Ya));//求三角形三內(nèi)角A=acos((b*b+c*c-a*a)/(2*b*c));B=acos((a*a+c*c-b*b)/(2*a*c));C=acos((a*a+b*b-c*c)/(2*a*b));//求權(quán)值Pa=tan(a)*tan(A)/(tan(a)-tan(A));Pb=tan(p)*tan(B)/(tan(卩)-tan(B));Pc=tan(Y)*tan(C)/(tan(Y)-tan(C));//求待測點坐標X=(Pa*Xa+Pb*Xb+Pc*Xc)/(Pa+Pb+Pc);Y=(Pa*Ya+Pb*Yb+Pc*Yc)/(Pa+Pb+Pc);}文件3IntersectionDlg.cppvoidCIntersectionDlg::OnBnClickedButton1(){//TODO:在此添加控件通知處理程序代碼UpdateData(TRUE);intiLine;//分行并存入字符串數(shù)組CString*pstrLine=SplitString(strObsData,13,iLine);/*iLine=3;*/doubleXa,Ya,Xb,Yb,Xc,Yc;//已知坐標值doublea,卩;//前方交會角度觀測值doublea,卩,y; //后方交會角度觀測值doubleDap,Dbp;//測邊交會距離觀測值CString*strTmp=NULL;intn;//分割第一行獲得A點坐標strTmp=SplitString(pstrLine[0],',',n);Xa=_tstof(strTmp[0]);Ya=_tstof(strTmp[1]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}//分割第二行獲得B點坐標strTmp=SplitString(pstrLine[1],',',n);Xb=_tstof(strTmp[0]);Yb=_tstof(strTmp[1]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}//前方交會if(iMethod==1){strTmp=SplitString(pstrLine[2],',',n);//分割第三行a=_tstof(strTmp[0]);//獲得前方交會觀測角度卩=_tstof(strTmp[l]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;
strTmp=NULL;}Forwardlntersection(Xa,Ya,Xb,Yb,a,卩,Xp,Yp);//測邊交會elseif(iMethod==2){strTmp=SplitString(pstrLine[2],',',n);Dap=_tstof(strTmp[0]);//獲得測邊交會觀測距離Dbp=_tstof(strTmp[1]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}SideIntersection(Xa,Ya,Xb,Yb,Dap,Dbp,Xp,Yp);}//后方交會elseif(iMethod==3){//獲得C點坐標strTmp=SplitString(pstrLine[2],',',n);Xc=_tstof(strTmp[0]);Yc=_tstof(strTmp[1]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}strTmp=SplitString(pstrLine[3],',',n);a=_tstof(strTmp[0]);//獲得后方交會觀測角度卩=_tstof(strTmp[l]);Y=_tstof(strTmp[2]);if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}//if(strTmp!=NULL)//釋放內(nèi)存//{//delete[]strTmp;//strTmp=NULL;//}Resection(Xa,Ya,Xb,Yb,Xc,Yc,a,卩,Y,Xp,Yp);}else{MessageBox(_T("輸入的數(shù)據(jù)不完整!"));return;}if(strTmp!=NULL)//釋放內(nèi)存{delete[]strTmp;strTmp=NULL;}UpdateData(FALSE);}CString*CIntersectionDlg::SplitString(CStringstr,charsplit,int&iSubStrs){intiPos=0;//分割符位置intiNums=0;//分割符的總數(shù)CStringstrTemp=str;CStringstrRight;//先計算子字符串的數(shù)量while(iPos!=-1){iPos=strTemp.Find(split);if(iPos==-1){break;}strRight=strTemp.Mid(iPos+1,str.GetLength());strTemp=strRight;iNums++;}if(iNums==0)//沒有找到分割符{//子字符串數(shù)就是字符串本身iSubStrs=1;returnNULL;}//子字符串數(shù)組iSubStrs=iNums+1;//子串的數(shù)量=分割符數(shù)量+1CString*pStrSplit;pStrSplit=newCString[iSubStrs];strTemp=str;CStringstrLeft;for(inti=0;i<iNums;i++){iPos=strTemp.Find(split);//左子串strLeft=strTemp.Left(iPos);//右子串strRight=strTemp.Mid(iPos+1,strTemp.GetLength());strTemp=strRight;pStr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020-2021深圳育才中學(初中)小學三年級數(shù)學下期末一模試卷帶答案
- 安裝鐵塔施工方案
- 2024年黑龍江大慶中考滿分作文《詩中誦出赤子心》
- 個人購銷合同范例范例
- 修路個人勞務(wù)合同范例
- 合伙餐廳合同范本
- 跨部門合作的工作計劃實例
- 鄉(xiāng)村樹苗銷售合同范例
- 學生自我管理與目標追蹤計劃
- 培養(yǎng)員工潛能與激勵方式計劃
- 2023年貴州貴州貴安發(fā)展集團有限公司招聘筆試真題
- 福建省漳州市2023-2024學年高二上學期期末考試化學試題 含答案
- 初中數(shù)學新課程標準(2024年版)
- 煤礦危險源辨識和風險考核試卷
- 科學計算語言Julia及MWORKS實踐 課件 4-Syslab簡介
- 新能源汽車三電系統(tǒng)培訓教材
- 2024機械車間裝配作業(yè)指導(dǎo)書
- 城市污水處理廠改造施工方案
- 八項規(guī)定解讀
- 2024年高等教育法學類自考-00369警察倫理學考試近5年真題集錦(頻考類試題)帶答案
- 礦山開采居間合作協(xié)議書范文
評論
0/150
提交評論