#include <malloc.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define NULL 0 #define MaxSize 30 typedef struct athletestruct /*運動員*/ { char name[20]; int score; /*分數*/ int range; /**/ int item; /*項目*/ }ATH; typedef struct schoolstruct /*學校*/ { int count; /*編號*/ int serial; /**/ int menscore; /*男選手分數*/ int womenscore; /*女選手分數*/ int totalscore; /*總分*/ ATH athlete[MaxSize]; /**/ struct schoolstruct *next; }SCH; int nsc,msp,wsp; int ntsp; int i,j; int overgame; int serial,range; int n; SCH *head,*pfirst,*psecond; int *phead=NULL,*pafirst=NULL,*pasecond=NULL; void create(); void input () { char answer; head = (SCH *)malloc(sizeof(SCH)); /**/ head->next = NULL; pfirst = head; answer = 'y'; while ( answer == 'y' ) { Is_Game_DoMain: printf("\nGET Top 5 when odd\nGET Top 3 when even"); printf("\n輸入運動項目序號 (x<=%d):",ntsp); scanf("%d",pafirst); overgame = *pafirst; if ( pafirst != phead ) { for ( pasecond = phead ; pasecond < pafirst ; pasecond ++ ) { if ( overgame == *pasecond ) { printf("\n這個項目已經存在請選擇其他的數字\n"); goto Is_Game_DoMain; } } } pafirst = pafirst + 1; if ( overgame > ntsp ) { printf("\n項目不存在"); printf("\n請重新輸入"); goto Is_Game_DoMain; } switch ( overgame%2 ) { case 0: n = 3;break; case 1: n = 5;break; } for ( i = 1 ; i <= n ; i++ ) { Is_Serial_DoMain: printf("\n輸入序號 of the NO.%d (0<x<=%d): ",i,nsc); scanf("%d",&serial); if ( serial > nsc ) { printf("\n超過學校數目,請重新輸入"); goto Is_Serial_DoMain; } if ( head->next == NULL ) { create(); } psecond = head->next ; while ( psecond != NULL ) { if ( psecond->serial == serial ) { pfirst = psecond; pfirst->count = pfirst->count + 1; goto Store_Data; } else { psecond = psecond->next; } } create(); Store_Data: pfirst->athlete[pfirst->count].item = overgame; pfirst->athlete[pfirst->count].range = i; pfirst->serial = serial; printf("Input name:) : "); scanf("%s",pfirst->athlete[pfirst->count].name); } printf("\n繼續輸入運動項目(y&n)?"); answer = getchar(); printf("\n"); } } void calculate() /**/ { pfirst = head->next; while ( pfirst->next != NULL ) { for (i=1;i<=pfirst->count;i++) { if ( pfirst->athlete[i].item % 2 == 0 ) { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 5;break; case 2:pfirst->athlete[i].score = 3;break; case 3:pfirst->athlete[i].score = 2;break; } } else { switch (pfirst->athlete[i].range) { case 1:pfirst->athlete[i].score = 7;break; case 2:pfirst->athlete[i].score = 5;break; case 3:pfirst->athlete[i].score = 3;break; case 4:pfirst->athlete[i].score = 2;break; case 5:pfirst->athlete[i].score = 1;break; } } if ( pfirst->athlete[i].item <=msp ) { pfirst->menscore = pfirst->menscore + pfirst->athlete[i].score; } else { pfirst->womenscore = pfirst->womenscore + pfirst->athlete[i].score; } } pfirst->totalscore = pfirst->menscore + pfirst->womenscore; pfirst = pfirst->next; } } void output() { pfirst = head->next; psecond = head->next; while ( pfirst->next != NULL ) { // clrscr(); printf("\n第%d號學校的結果成績:",pfirst->serial); printf("\n\n項目的數目\t學校的名字\t分數"); for (i=1;i<=ntsp;i++) { for (j=1;j<=pfirst->count;j++) { if ( pfirst->athlete[j].item == i ) { printf("\n %d\t\t\t\t\t\t%s\n %d",i,pfirst->athlete[j].name,pfirst->athlete[j].score);break; } } } printf("\n\n\n\t\t\t\t\t\t按任意建 進入下一頁"); getchar(); pfirst = pfirst->next; } // clrscr(); printf("\n運動會結果:\n\n學校編號\t男運動員成績\t女運動員成績\t總分"); pfirst = head->next; while ( pfirst->next != NULL ) { printf("\n %d\t\t %d\t\t %d\t\t %d",pfirst->serial,pfirst->menscore,pfirst->womenscore,pfirst->totalscore); pfirst = pfirst->next; } printf("\n\n\n\t\t\t\t\t\t\t按任意建結束"); getchar(); } void create() { pfirst = (struct schoolstruct *)malloc(sizeof(struct schoolstruct)); pfirst->next = head->next ; head->next = pfirst ; pfirst->count = 1; pfirst->menscore = 0; pfirst->womenscore = 0; pfirst->totalscore = 0; } void Save() {FILE *fp; if((fp = fopen("school.dat","wb"))==NULL) {printf("can't open school.dat\n"); fclose(fp); return; } fwrite(pfirst,sizeof(SCH),10,fp); fclose(fp); printf("文件已經成功保存\n"); } void main() { system("cls"); printf("\n\t\t\t 運動會分數統計\n"); printf("輸入學校數目 (x>= 5):"); scanf("%d",&nsc); printf("輸入男選手的項目(x<=20):"); scanf("%d",&msp); printf("輸入女選手項目(<=20):"); scanf("%d",&wsp); ntsp = msp + wsp; phead = (int *)calloc(ntsp,sizeof(int)); pafirst = phead; pasecond = phead; input(); calculate(); output(); Save(); }
標簽: 源代碼
上傳時間: 2016-12-28
上傳用戶:150501
取各障礙物頂點連線的中點為路徑點,相互連接各路徑點,將機器人移動的起點和終點限制在各路徑點上,利用最短路徑算法來求網絡圖的最短路徑,找到從起點P1到終點Pn的最短路徑。上述算法使用了連接線中點的條件,因此不是整個規劃空間的最優路徑,然后利用遺傳算法對找到的最短路徑各個路徑點Pi (i=1,2,…n)調整,讓各路徑點在相應障礙物端點連線上滑動,利用Pi= Pi1+ti×(Pi2-Pi1)(ti∈[0,1] i=1,2,…n)即可確定相應的Pi,即為新的路徑點,連接此路徑點為最優路徑。
上傳時間: 2017-05-05
上傳用戶:tttt123
作者:Charles K Alexander ,Matthew N.O Sadiku 內容:電路基礎知識,電子工程師必學課程
標簽: 電路基礎
上傳時間: 2021-02-03
上傳用戶:
P P I I CK I I T T3 3 使用 說明--- - 連機 、 脫 機操作試用 MPLAB IDE 軟件一 、 P P I I C CK K I I T3 接 口說 明, , 硬 件 二 、 P P I I C CK K I I T3 連 接 電腦 MPL L AB I I DE 聯機三 、 聯機四 、聯機讀芯片程序五 、 脫機 燒寫 調試
上傳時間: 2022-03-24
上傳用戶:
安裝塌所1、通凰良好少溫策及灰座之塌所。2、雜腐蝕性、引火性氛髓、油急、切削液、切前粉、戴粉等聚境。3、雜振勤的場所。4、雜水氟及踢光直射的場所。1、本距勤器探用自然封流冷御方式正隨安裝方向局垂直站立方式2、在配電箱中需考感溫升情況未連有效散熟及冷御效果需保留足豹的空固以取得充分的空氟。3、如想要使控制箱內溫度連到一致需增加凰扇等散熱毅倩。4、組裝睛廊注意避免贊孔屑及其他翼物掉落距勤器內。5、安裝睛請硫資以M5螺練固定。6、附近有振勤源時請使用振勤吸收器防振橡腥來作腐噩勤器的防振支撐。7、勤器附近有大型磁性陰嗣、熔接樓等雄部干援源睛,容易使距勤器受外界干攝造成誤勤作,此時需加裝雄部濾波器。但雍訊濾波器舍增加波漏電流,因此需在愿勤器的輸入端裝上經緣羹愿器(Transformer)。*配象材料依照使用電象規格]使用。*配象的喪度:指令輸入象3公尺以內。編碼器輸入綜20公尺以內。配象時請以最短距薄速接。*硫賞依照操單接象圈配象,未使用到的信貌請勿接出。*局連輸出端(端子U、V、W)要正硫的速接。否則伺服焉速勤作舍不正常。*隔雄綜必須速接在FG端子上。*接地請以使用第3砸接地(接地電阻值腐100Ω以下),而且必須罩黏接地。若希望易速輿械之周腐紀緣狀懲畸,請將連接地。*伺服距勤器的輸出端不要加裝電容器,或遇(突波)吸收器及雅訊濾波器。*裝在控制輸出信號的DC繼電器,其遏(突波)吸收用的二梗溜的方向要速接正硫,否則食造成故障,因而雜法輸出信猶,也可能影馨緊急停止的保渡迎路不座生作用。*腐了防止雍部造成的錯溪勤作,請探下列的威置:請在電源上加入經緣雯愿器及雅亂濾波器等裝置。請將勤力緣(雷源象、焉連緣等的蘊雷回路)奧信蔬緣相距30公分以上來配練,不要放置在同一配緣管內。
標簽: tsda
上傳時間: 2022-05-28
上傳用戶:zhanglei193
反激式開關電源設計、制作、調試_2014年版..pdf 《新型開關電源優化設計與實例詳解》_2006版.pdf 《開關電源手冊》第2版_2006年.pdf 《開關電源設計指南》_2004年版.pdf 《開關電源設計與優化》_2006年版.pdf 《開關電源設計》第2版_2005年版.pdf 《開關電源故障診斷與排除》_2011年版.pdf 《開關電源的原理與設計》_2001年版.pdf 《精通開關電源設計》_2008年版.pdf 《交換式電源供給器之理論與實務設計》.pdf
標簽: 數字圖像處理
上傳時間: 2013-04-15
上傳用戶:eeworm
對於集成電路而言,汽車是一種苛刻的使用環境,這裡,引擎罩下的工作溫度範圍可寬達 -40°C 至 125°C,而且,在電池電壓總線上出現大瞬變偏移也是預料之中的事
上傳時間: 2013-11-20
上傳用戶:zhaiye
一直以來, 電子電路斷路器( E C B ) 都是由一個MOSFET、一個 MOSFET 控制器和一個電流檢測電阻器所組成的。
上傳時間: 2013-10-18
上傳用戶:qwerasdf
微電腦型單相交流集合式電表(單相二線系統) 特點: 精確度0.25%滿刻度±1位數 可同時量測與顯示交流電壓,電流,頻率,瓦特,(功率因數/視在功率) 交流電壓,電流,瓦特皆為真正有效值(TRMS) 交流電流,瓦特之小數點可任意設定 瓦特單位W或KW可任意設定 CT比可任意設定(1至999) 輸入與輸出絕緣耐壓 2仟伏特/1分鐘( 突波測試強度4仟伏特(1.2x50us) 數位RS-485界面 (Optional) 主要規格: 精確度: 0.1% F.S.±1 digit (Frequency) 0.25% F.S.±1 digit(ACA,ACV,Watt,VA) 0.25% F.S. ±0.25o(Power Factor) (-.300~+.300) 輸入負載: <0.2VA (Voltage) <0.2VA (Current) 最大過載能力: Current related input: 3 x rated continuous 10 x rated 30 sec. 25 x rated 3sec. 50 x rated 1sec. Voltage related input: maximum 2 x rated continuous 過載顯示: "doFL" 顯示值范圍: 0~600.0V(Voltage) 0~999.9Hz(Frequency)(<20% for voltage input) 0~19999 digit adjustable(Current,Watt,VA) 取樣時間: 2 cycles/sec. RS-485通訊位址: "01"-"FF" RS-485傳輸速度: 19200/9600/4800/2400 selective RS-485通信協議: Modbus RTU mode 溫度系數: 100ppm/℃ (0-50℃) 顯示幕: Red high efficiency LEDs high 10.16 mm(0.4") 參數設定方式: Touch switches 記憶型式: Non-volatile E²PROM memory 絕緣抗阻: >100Mohm with 500V DC 絕緣耐壓能力: 2KVac/1 min. (input/output/power) 1600 Vdc (input/output) 突波測試: ANSI c37.90a/1974,DIN-IEC 255-4 impulse voltage 4KV(1.2x50us) 使用環境條件: 0-50℃(20 to 90% RH non-condensed) 存放環境條件: 0-70℃(20 to 90% RH non-condensed) CE認證: EN 55022:1998/A1:2000 Class A EN 61000-3-2:2000 EN 61000-3-3:1995/A1:2001 EN 55024:1998/A1:2001
上傳時間: 2015-01-03
上傳用戶:幾何公差
功能:接收讀卡器 Wiegand 信號,輸出給 RS232 驅動繼電器輸出 0.2秒 資源: ①P87LPC764(20P,4K+128) &18.4320M ②RS232 &9600, N, 8, 1 ③2路管腳直接輸入 ④1路繼電器輸出、2路三極管輸出
上傳時間: 2013-12-01
上傳用戶:litianchu