




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、C語言課程設(shè)計學(xué)籍信息管理系統(tǒng)學(xué)號:20071000611班級:055071姓名:周泓吉指導(dǎo)老師:劉文中學(xué)籍信息管理系統(tǒng)一,題目要求使用下面的數(shù)據(jù)設(shè)計一個簡單的學(xué)籍管理系統(tǒng)。 學(xué)生基本信息文件(A.TXT)極其內(nèi)容: 學(xué)號 姓名 性別 宿舍號碼 電話號碼 01 張成成 男 501 87732111 02 李成華 女 101 87723112 03 王成鳳 女 101 87723112 04 張明明 男 502 87734333 05 陳東 男 501 87732111 06 李果 男 502 87734333 07 張園園 女 102 87756112 學(xué)生成績基本信息文件(B.TXT)極其內(nèi)
2、容: . 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 01 A01 大學(xué)物理 3 66 78 82 02 B03 高等數(shù)學(xué) 4 78 -1 90 01 B03 高等數(shù)學(xué) 4 45 -1 88 02 C01 VF 3 65 76 66 . 功能要求極其說明: (1)數(shù)據(jù)錄入功能:錄入每個學(xué)生的學(xué)號、課程編號、課程名稱、學(xué)分、平時成績、實驗成績、卷面成績共7個數(shù)據(jù)。實得成績、實得學(xué)分根據(jù)條件自動運算。 綜合成績的計算: a.如果本課程的實驗成績?yōu)?1,則表無實驗成績,綜合成績=平時成績*30%+卷面成績*70% b.如果實驗成績不為-1,表示本課程有實驗成績,
3、綜合成績=平時成績*15%+實驗成績*15%+卷面成績*70% 實得學(xué)分的計算:采用等級學(xué)分制。 綜合成績在90100之間,應(yīng)得學(xué)分=學(xué)分*100% 綜合成績在8090之間,應(yīng)得學(xué)分=學(xué)分*80% 綜合成績在7080之間,應(yīng)得學(xué)分=學(xué)分*75% 綜合成績在6070之間,應(yīng)得學(xué)分=學(xué)分*60% 綜合成績在60分以下,應(yīng)得學(xué)分=學(xué)分*0% (2)查詢功能:分為學(xué)生基本情況查詢和成績查詢兩種 學(xué)生基本情況查詢: 輸入一個學(xué)號或姓名(可實現(xiàn)選擇)查出此學(xué)生的基本信息并顯示輸出。 輸入一個宿舍號碼,可查出本室所有學(xué)生的基本信息并顯示輸出。 稱號查詢: 輸入一個學(xué)號時,查出此學(xué)生所有課程情況,格式如下:
4、學(xué)號:XX 課程名稱:XXXX綜合成績:XX實得學(xué)分:XXX . 共修:X科,實得總分為:XXX (3)刪除功能:當(dāng)在A.TXT中刪除一個學(xué)生時,自動地在B.TXT中刪除此學(xué)生所有信息。 (4)排序功能:能實現(xiàn)選擇按綜合成績或?qū)嵉脤W(xué)分升序或降序排序并顯示數(shù)據(jù)。 提示 數(shù)據(jù)結(jié)構(gòu)才用結(jié)構(gòu)體數(shù)組,提供學(xué)生基本信息和學(xué)生成績基本信息結(jié)構(gòu)體數(shù)組。二,需求分析根據(jù)題目要求,學(xué)籍信息管理系統(tǒng)需要輸入和輸出等操作,在程序中,需要數(shù)據(jù)錄入,查詢,刪除,刪除和排序功能。三,解題的思路1、 定義結(jié)構(gòu)typedef struct int Id;char10 name;int sex; / or bool sexint
5、 room;int tel; StudentInfo;typedef struct int Id;char10 courseNo;char20 couseName;int a; / 課程學(xué)分int b; / 平時成績int c; / 實驗成績int d; / 卷面成績float e; / 綜合成績float f; / 實際學(xué)分 GradeInfo2、 定義結(jié)構(gòu)數(shù)組為全局變量StudentInfo si100; / 學(xué)生信息結(jié)構(gòu)數(shù)組GradeInfo gi500; / 學(xué)生成績結(jié)構(gòu)數(shù)組int sp=0; / 學(xué)生信息結(jié)構(gòu)數(shù)組中學(xué)生數(shù)int gp=0; / 學(xué)生成績結(jié)構(gòu)數(shù)組中成績數(shù)3、 主程序的結(jié)
6、構(gòu)void main()int x;1、 ReadFile(); / 從文件中讀取數(shù)據(jù)對兩個結(jié)構(gòu)數(shù)組賦值, 采用子函數(shù)的形式可以使主程序結(jié)構(gòu)清楚2、 While (1) DisplayMainMenu(); / 因為要多次調(diào)用工作菜單,要采用子函數(shù)的形式scanf (“%d”,&x);switch xCase 1 :DataInput(); break; /Case 2 :DataQuery(); break; /Case 3 :DataDelete(); break; /Case 4 :DaraSort(); break; / Case 5 :exit(0);數(shù)據(jù)錄 入數(shù)據(jù)查 詢數(shù)據(jù)
7、刪 除數(shù)據(jù)排 序程序結(jié)束學(xué)籍管理系統(tǒng)開始程序結(jié)束結(jié)束void ReadFile( ) File *fp;fp = fopen(“A.txt”,”r”);while (!feof(fp)fscanf(fp,“%d%s%d%d%d”, &sisp.Id,,&sisp.sex,&sisp.room,&sisp.tel);p+;fclose (fp);fp = fopen(“B.txt”,”r”);while (!feof(fp)fscanf (fp,”%d,%s%s%d%d%d%d”,&gigp.Id,gigp.courseNo,gigp.c
8、ourseName,&gigp.a,&gigp.b,&gigp.c, &gigp.d);if (gigp.c = -1) gigp.e = 0.3*gigp.b+0.7*gigp.d;else gigp.e = 0.15*gigp.b+0.15*gigp.c+0.7*gigp.d;if ( gigp.e > = 90. ) gigp.f = gigp.a *1.;else if ( gi gp.e >= 80. ) gigp.f = gigp.a *0.8;else if ( gigp.e >= 70. )gigp.f = gigp.a *0.
9、75;else if ( gigp.e >= 60. ) gigp.f = gigp.a *0.6;else gigp.f = 0;gp+;fclose(fp);void DisplayMainMenu()printf (“ 1) 數(shù)據(jù)錄入 n2) 數(shù)據(jù)查詢 n3) 數(shù)據(jù)刪除 n4) 數(shù)據(jù)排序 n5) 程序結(jié)束 n “);顯示一系列功能選項根據(jù)x的值調(diào)用各功能模塊函數(shù)結(jié)束開始void DataInput()printf (“學(xué)生的學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績n”);fscanf (fp,”%d,%s%s%d%d%d%d”,&gigp.Id,gigp
10、.courseNo,gigp.courseName,&gigp.a,&gigp.b,&gigp.c, &gigp.d);if (gigp.c = -1) gigp.e = 0.3*gigp.b+0.7*gigp.d;else gigp.e = 0.15*gigp.b+0.15*gigp.c+0.7*gigp.d;if ( gigp.e > = 90. ) gigp.f = gigp.a *1.;else if ( gi gp.e >= 80. ) gigp.f = gigp.a *0.8;else if ( gigp.e >= 70. )gig
11、p.f = gigp.a *0.75;else if ( gigp.e >= 60. ) gigp.f = gigp.a *0.6;else gigp.f = 0;gp+;開始輸入學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績結(jié)束數(shù)據(jù)輸入void DataQuery()int x,y;printf( “ 1) 學(xué)生基本情況查詢n 2) 成績查詢n”);if (x = 1) / 查詢學(xué)生信息printf (“1) 按學(xué)號查詢 2)按宿舍查詢n”);if (y = 1 ) printf ( “ 輸入學(xué)號n”); scanf (“%d”,&y);QueryById(y);
12、if (y = 2) printf ( “ 輸入宿舍號n”); scanf (“%d”,&y);QueryByRoom(y);if ( x =2) / 查詢成績信息printf ( “ 輸入學(xué)號n”); scanf (“%d”,&y);QueryGrade(y);開始數(shù)據(jù)查詢x=1?Y=1?輸入學(xué)號輸入宿舍號輸入學(xué)號NNYY結(jié)束void DataDelete()int x;int i=0;printf( “輸入學(xué)號n”);scanf( “%d”,&x);while( sii.Id != x) i+;if (i<sp-1)for ( k=i; k<sp-1;
13、k+)sik = sik+1; / 刪除一個數(shù)據(jù)后,其他數(shù)據(jù)前移if ( i<sp) sp-;d = 0; / 成績數(shù)組中,有多個相同的學(xué)號,都要刪除,并且后面的數(shù)據(jù)需要前移for (k=0;k<qp;k+)if ( gigp.Id = x ) d +;else gik-d = gik;gp = gp d;開始數(shù)據(jù)刪除結(jié)束輸入學(xué)號oid QueryById(int x)int i;for (i=0;i<sp;i+)if ( sii.Id = x ) printf ("n學(xué)號姓名性別宿舍號碼電話號碼n");printf ("%d%s%s%d%dn&
14、quot;,sii.Id,,sii.sex,sii.room,sii.tel);void QueryByRoom(int x)int i;for (i=0;i<sp;i+)if ( sii.room = x ) printf ("n學(xué)號姓名性別宿舍號碼電話號碼n");printf ("%d%s%s%d%dn",sii.Id,,sii.sex,sii.room,sii.tel);void QueryGrade(int x)int i;int sc=0;float sg=0;for (i=0;i<gp;i+)if
15、( gii.Id = x ) sc+;sg += gii.f;printf("n學(xué)號課程編號課程名稱學(xué)分平時成績實驗成績卷面成績綜合成績實得學(xué)分n");printf("%d%s%s%f%f%f%f%f%f%fn",gii.Id,gii.courseNo,gii.courseName,gii.a,gii.b,gii.c,gii.d,gii.e,gii.f);printf ("共修:%d科,實得總分為:%fn",sc,sg);void DataSort()int x;printf ("1)綜合成績排序n2)實際學(xué)分排序n&quo
16、t;);scanf("%d",&x);if ( x = 1 ) sort1();if ( x = 2 ) sort2();void sort1()int i,j;GradeInfo t;for (i=gp-1;i>=1;i-)for (j=0;j<i;j+)if (gij.e>gij+1.e) / 如果改為 gij.e< gij+1.e 則為逆序 t=gij;gij = gij+1;gij+1 = t;gradeput();void sort2()int i,j;GradeInfo t;for (i=gp-1;i>=1;i-)for (
17、j=0;j<i;j+)if (gij.f>gij+1.f) / 如果改為 gij.f< gij+1.f 則為逆序 t=gij;gij = gij+1;gij+1 = t;gradeput();void gradeput()int i;for( i=0;i<gp;i+)printf("n學(xué)號課程編號課程名稱學(xué)分平時成績實驗成績卷面成績綜合成績實得學(xué)分n");printf("%d%s%s%f%f%f%f%f%fn",gii.Id,gii.courseNo,gii.courseName,gii.a,gii.b,gii.c,gii.d,g
18、ii.e,gii.f);結(jié)束數(shù)據(jù)排序X=1?實際學(xué)分排序綜合成績排序結(jié)束YN四,運行與測試報告-Configuration: zhj - Win32 Debug-Compiling.Skipping. (no relevant changes detected)zhj.cppzhj.obj - 0 error(s), 0 warning(s)-1) 數(shù)據(jù)錄入 2) 數(shù)據(jù)查詢 3) 數(shù)據(jù)刪除 4) 數(shù)據(jù)排序 5) 程序結(jié)束 1學(xué)生的學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績-2 1) 學(xué)生基本情況查詢 2) 成績查詢11) 按學(xué)號查詢 2) 按宿舍查詢1 輸入學(xué)號1 學(xué)號 姓名
19、 性別 宿舍號碼 電話號碼 1 張成成 男 501 87732111-2 1) 學(xué)生基本情況查詢 2) 成績查詢11) 按學(xué)號查詢 2) 按宿舍查詢2 輸入宿舍號101 學(xué)號 姓名 性別 宿舍號碼 電話號碼 2 李成華 女 101 87723112 學(xué)號 姓名 性別 宿舍號碼 電話號碼 3 王成鳳 女 101 87723112-2 1) 學(xué)生基本情況查詢 2) 成績查詢2 輸入學(xué)號1 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1 A01 大學(xué)物理 3.000000 66.000000 78.000000 82.000000 79.000000 2.250
20、000 0.000000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1 B03 高等數(shù)學(xué) 4.000000 45.000000 -1.000000 88.000000 75.099998 3.000000 0.000000共修:2科,實得總分為:5.250000-3輸入學(xué)號-4 1) 綜合成績排序 2) 實際學(xué)分排序1 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 2 C01 VF 3.000000 65.000000 76.00000066.000000 67.349998 1.800000 學(xué)號 課程編號 課程名稱
21、 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1 B03 高等數(shù)學(xué) 4.000000 45.000000 -1.000000 88.000000 75.099998 3.000000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1 A01 大學(xué)物理 3.000000 66.000000 78.000000 82.000000 79.000000 2.250000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 2 B03 高等數(shù)學(xué) 4.000000 78.000000 -1.000000 90.000000 8
22、6.400002 3.200000-4 1) 綜合成績排序 2) 實際學(xué)分排序2 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 2 C01 VF 3.000000 65.000000 76.00000066.000000 67.349998 1.800000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1 A01 大學(xué)物理 3.000000 66.000000 78.000000 82.000000 79.000000 2.250000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 1
23、 B03 高等數(shù)學(xué) 4.000000 45.000000 -1.000000 88.000000 75.099998 3.000000 學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績 綜合成績 實得學(xué)分 2 B03 高等數(shù)學(xué) 4.000000 78.000000 -1.000000 90.000000 86.400002 3.200000-5Press any key to continue五,設(shè)計體會通過這次的程序設(shè)計實習(xí),自己編寫程序,從上百個錯誤慢慢的修改,經(jīng)過自己的努力和老師的細(xì)心教導(dǎo)之下,錯誤逐漸的變少,最終可以運行了,這次的實習(xí)中,我磨練了自己的毅力和耐力,讓我的信心
24、倍增,在這短短的24的學(xué)時里,我體會到了苦與甜,更讓我學(xué)到了很多的知識,在以后的工作中肯定會非常有用的,使對未來的生活充滿了信心。#include <stdio.h>typedef struct int Id;char name10;char sex6; int room;int tel; StudentInfo;typedef struct int Id;char courseNo10;char courseName20;float a; / 課程學(xué)分float b; / 平時成績float c; / 實驗成績float d; / 卷面成績float e; / 綜合成績float
25、 f; / 實際學(xué)分 GradeInfo;/ 定義結(jié)構(gòu)數(shù)組為全局變量StudentInfo si100; / 學(xué)生信息結(jié)構(gòu)數(shù)組GradeInfo gi500; / 學(xué)生成績結(jié)構(gòu)數(shù)組int sp=0; / 學(xué)生信息結(jié)構(gòu)數(shù)組中學(xué)生數(shù)int gp=0; / 學(xué)生成績結(jié)構(gòu)數(shù)組中成績數(shù)void ReadFile();void DisplayMainMenu();void DataInput();void DataQuery();void DataDelete();void DataSort();void QueryById(int );void QueryByRoom(int );void QueryG
26、rade(int );void sort1();void sort2();void gradeput();/ 主程序的結(jié)構(gòu)void main()int x;ReadFile(); / 從文件中讀取數(shù)據(jù)對兩個結(jié)構(gòu)數(shù)組賦值, 采用子函數(shù)的形式可以使主程序結(jié)構(gòu)清楚int flag =1;while (flag) DisplayMainMenu(); / 因為要多次調(diào)用工作菜單,要采用子函數(shù)的形式scanf ("%d",&x);switch (x)case 1 :DataInput(); break; /case 2 :DataQuery(); break; /case 3
27、 :DataDelete(); break; /case 4 :DataSort(); break; / case 5 :flag = 0;void ReadFile( ) FILE *fp;fp = fopen("A.txt","r");while (!feof(fp)fscanf(fp,"%d%s%s%d%d", &sisp.Id,,&sisp.sex,&sisp.room,&sisp.tel);sp+;fclose (fp);fp = fopen("B.txt"
28、;,"r");while (!feof(fp)fscanf (fp,"%d%s%s%f%f%f%f",&gigp.Id,gigp.courseNo,gigp.courseName,&gigp.a,&gigp.b,&gigp.c, &gigp.d);if (gigp.c = -1) gigp.e = 0.3*gigp.b+0.7*gigp.d;else gigp.e = 0.15*gigp.b+0.15*gigp.c+0.7*gigp.d;if ( gigp.e >= 90. ) gigp.f = gigp.a
29、;else if ( gi gp.e >= 80. ) gigp.f = gigp.a *0.8;else if ( gigp.e >= 70. )gigp.f = gigp.a *0.75;else if ( gigp.e >= 60. ) gigp.f = gigp.a *0.6;else gigp.f = 0;gp+;fclose(fp);void DisplayMainMenu()printf ("n 1)數(shù)據(jù)錄入 n 2)數(shù)據(jù)查詢 n 3)數(shù)據(jù)刪除 n 4)數(shù)據(jù)排序 n 5)程序結(jié)束 n ");void DataInput()printf (&q
30、uot;學(xué)生的學(xué)號 課程編號 課程名稱 學(xué)分 平時成績 實驗成績 卷面成績n");scanf ("%d%s%s%f%f%f%f",&gigp.Id,gigp.courseNo,gigp.courseName,&gigp.a,&gigp.b,&gigp.c, &gigp.d);if (gigp.c = -1) gigp.e = 0.3*gigp.b+0.7*gigp.d;else gigp.e = 0.15*gigp.b+0.15*gigp.c+0.7*gigp.d;if ( gigp.e >= 90. ) gigp.f
31、 = gigp.a;else if ( gi gp.e >= 80. ) gigp.f = gigp.a *0.8;else if ( gigp.e >= 70. )gigp.f = gigp.a *0.75;else if ( gigp.e >= 60. ) gigp.f = gigp.a *0.6;else gigp.f = 0;gp+;void DataQuery()int x,y,z;printf( "n 1)學(xué)生基本情況查詢n 2)成績查詢n");scanf("%d",&x);if (x = 1) / 查詢學(xué)生信息pr
32、intf ("1)按學(xué)號查詢 2)按宿舍查詢n");scanf("%d",&y);if (y = 1 ) printf ( " 輸入學(xué)號n"); scanf ("%d",&z);QueryById(z);if (y = 2) printf ( " 輸入宿舍號n"); scanf ("%d",&z);QueryByRoom(z);if ( x =2) / 查詢成績信息printf ( " 輸入學(xué)號n"); scanf ("%
33、d",&y);QueryGrade(y);void DataDelete()int x;int i=0;int k,d;printf( "輸入學(xué)號n");scanf( "%d",&x);while( sii.Id != x) i+;if (i<sp-1)for ( k=i; k<sp-1; k+)sik = sik+1; / 刪除一個數(shù)據(jù)后,其他數(shù)據(jù)前移if ( i<sp) sp-;d = 0; / 成績數(shù)組中,有多個相同的學(xué)號,都要刪除,并且后面的數(shù)據(jù)需要前移for (k=0;k<gp;k+)if ( gik.Id = x ) d+;else gik-d = gik;gp = gp - d;void QueryById(int x)int i;for (i=0;i<sp;i+)if ( sii.Id = x ) printf ("n學(xué)號姓名性別宿舍號碼電話號碼n");printf ("%d%s%s%d%dn",sii.Id,,sii.sex,sii.room,sii.tel);void QueryByRoom(int x)int i;for (i=0;
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 稅務(wù)師網(wǎng)盤課件百度云
- 2025年 福建省大數(shù)據(jù)集團(tuán)有限公司招聘考試筆試試題附答案
- 中國雙缸洗衣機塑件行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 農(nóng)業(yè)機械生產(chǎn)線項目人力資源管理分析報告
- 2025-2030年中國鹽酥雞行業(yè)深度研究分析報告
- 2024-2030年中國遼寧省農(nóng)村城鎮(zhèn)化建設(shè)行業(yè)市場發(fā)展監(jiān)測及投資潛力預(yù)測報告
- 2024-2030年中國塞棒行業(yè)市場深度分析及發(fā)展?jié)摿︻A(yù)測報告
- 2025年中國交互電子白板行業(yè)發(fā)展監(jiān)測及投資戰(zhàn)略規(guī)劃報告
- 2025年中國晶閘管整流器行業(yè)市場全景調(diào)研及投資規(guī)劃建議報告
- 2025年中國電子元器件配件市場深度分析及行業(yè)前景展望報告
- 現(xiàn)場7S管理培訓(xùn)
- 液氨安全管理及應(yīng)急處置
- 2025年中考山西考試試題及答案
- 2025年湖南省長沙市岳麓區(qū)博才小學(xué)五下數(shù)學(xué)期末學(xué)業(yè)質(zhì)量監(jiān)測試題含答案
- 生產(chǎn)車間5S培訓(xùn)教材
- 課題申報書:AI賦能高校輔導(dǎo)員能力提升的路徑研究
- 【MOOC期末】《中國哲學(xué)》(北京師范大學(xué)) 期末中國大學(xué)慕課答案
- 整本書閱讀:《鄉(xiāng)土中國》(考教銜接講義)-2025年高考語文一輪復(fù)習(xí)(新教材新高考)
- 護(hù)理新技術(shù)項目匯報
- DL T596《電力設(shè)備預(yù)防性實驗規(guī)程》知識培訓(xùn)
- DB11T 594.1-2017 地下管線非開挖鋪設(shè)工程施工及驗收技術(shù)規(guī)程 第1部分:水平定向鉆施工
評論
0/150
提交評論