有一本講述C語(yǔ)言的書,自出版以來(lái),歷經(jīng)14載,它一直都被各個(gè)書評(píng)站點(diǎn)(或書評(píng)人)列入“重點(diǎn)推薦” 的清單中。尤為夸張的是,14年來(lái),在它的18次印刷版本中,除去第二次印刷稍微修改過(guò)一些問(wèn)題,以后的17 次印刷,我們居然發(fā)現(xiàn)它的內(nèi)容沒有絲毫的變更!!!對(duì)于技術(shù)書籍,我想其精確性與權(quán)威性也算是奇跡了吧。 這就是Andrew Koenig給我們帶來(lái)的C Traps and Pitfalls(《C陷阱與缺陷》)。 非常經(jīng)典的書籍! 強(qiáng)烈推薦閱讀! 作者簡(jiǎn)介: Andrew Koenig AT&T大規(guī)模程序研發(fā)部(前貝爾實(shí)驗(yàn)室)成員。他從1986年開始從事C語(yǔ)言的研究,1977年加入貝爾實(shí)驗(yàn)室。他編寫了一些早期的類庫(kù),并在1988年組織召開了第一個(gè)完全意義上的C++會(huì)議。在ISO/ANSI C++委員會(huì)成立的1989年,他就加入了該委員會(huì),并一直擔(dān)任項(xiàng)目編輯。他已經(jīng)發(fā)表了C++方面的100多篇論文,在Addsion-Wesley出版了C Trap and Pitfalls,還應(yīng)邀到世界各地演講。
標(biāo)簽: C語(yǔ)言
上傳時(shí)間: 2014-11-29
上傳用戶:xinzhch
算法的許多例子都是最優(yōu)化問(wèn)題( optimization problem),每個(gè)最優(yōu)化問(wèn)題都包含一組限制條件( c o n s t r a i n t)和一個(gè)優(yōu)化函數(shù)( optimization function),符合限制條件的問(wèn)題求解方案稱為可行解( feasible solution),使優(yōu)化函數(shù)取得最佳值的可行解稱為最優(yōu)解(optimal solution)。
標(biāo)簽: optimization problem 算法
上傳時(shí)間: 2014-08-25
上傳用戶:123456wh
車廂調(diào)度假設(shè)停在鐵路調(diào)度站入口處的車廂序列的編號(hào)依次為1,2,3……N。設(shè)計(jì)一個(gè)程序,求出所有由此輸出的長(zhǎng)度為N的車廂序列。
上傳時(shí)間: 2014-11-27
上傳用戶:zl5712176
26.編寫一個(gè)具有如下樣式的類模板tmplt,用于實(shí)現(xiàn)所謂的反序輸出問(wèn)題,其中使用了類型參數(shù)T(使所處理的元素類型可變化)以及普通參數(shù)n(元素個(gè)數(shù)也可變化): template <class T, int n> class tmplt { T arr[n] // n個(gè)T類型的數(shù)據(jù)存放于數(shù)組arr之中 public: void dataIn() //從鍵盤輸入n個(gè)T類型數(shù)據(jù)放入arr數(shù)組中 void reverseOut() //將arr數(shù)組中的數(shù)據(jù)按輸入的相反順序輸出 } 而后編制主函數(shù),將類模板實(shí)例化為某個(gè)具體的類并說(shuō)明類對(duì)象,之后通過(guò)對(duì)象調(diào)用其負(fù)責(zé)輸入數(shù)據(jù)的成員函數(shù),再通過(guò)對(duì)象調(diào)用另一成員函數(shù)按反序輸出那些輸入數(shù)據(jù)。
上傳時(shí)間: 2014-01-07
上傳用戶:xiaoxiang
提 出了一種 網(wǎng)絡(luò) 化嵌 入 式 數(shù) 控 系統(tǒng) , 系統(tǒng) 采 用 A RM 4 - D S P結(jié) 構(gòu) , 實(shí)現(xiàn) 了數(shù) 控 系統(tǒng) 的 小型 化 、 網(wǎng)絡(luò) 化 、 智能化 和 集成 化 。詳 細(xì)介 紹 了嵌入 式數(shù) 控 系統(tǒng) 內(nèi) CNC主控 單元 與 伺 服 驅(qū)動(dòng) 及 I /0邏輯 控 制 等各 單 元 間的通信 、 車 間級(jí) 工 業(yè) 以太 網(wǎng)絡(luò) 的通信 和 i n t r a n e t / I n t e r n e t網(wǎng)絡(luò) 通信 , 并給 出 了關(guān)鍵 實(shí)現(xiàn)技 術(shù)。
標(biāo)簽: 網(wǎng)絡(luò)
上傳時(shí)間: 2013-11-25
上傳用戶:as275944189
提 出了一種 網(wǎng)絡(luò) 化嵌 入 式 數(shù) 控 系統(tǒng) , 系統(tǒng) 采 用 A RM 4 - D S P結(jié) 構(gòu) , 實(shí)現(xiàn) 了數(shù) 控 系統(tǒng) 的 小型 化 、 網(wǎng)絡(luò) 化 、 智能化 和 集成 化 。詳 細(xì)介 紹 了嵌入 式數(shù) 控 系統(tǒng) 內(nèi) CNC主控 單元 與 伺 服 驅(qū)動(dòng) 及 I /0邏輯 控 制 等各 單 元 間的通信 、 車 間級(jí) 工 業(yè) 以太 網(wǎng)絡(luò) 的通信 和 i n t r a n e t / I n t e r n e t網(wǎng)絡(luò) 通信 , 并給 出 了關(guān)鍵 實(shí)現(xiàn)技 術(shù)。
標(biāo)簽: 網(wǎng)絡(luò)
上傳時(shí)間: 2013-12-27
上傳用戶:huannan88
:假設(shè)停在鐵路調(diào)度站入口處的車廂序列的編號(hào)一次為1,2,3,…,n。設(shè)計(jì)一個(gè)程序,求出所有可能由此輸出的長(zhǎng)度為n的車廂序列。
上傳時(shí)間: 2017-02-05
上傳用戶:蠢蠢66
一農(nóng)場(chǎng)由圖所示的十一種小方塊組成,藍(lán)色線條為灌溉渠。若相鄰兩塊的灌溉渠相連則只需一口水井灌溉。給出若干由字母表示的最大不超過(guò)50×50具體由(m,n)表示,的農(nóng)場(chǎng)圖,編程求出最小需要打的井?dāng)?shù)。每個(gè)測(cè)例的輸出占一行。當(dāng)M=N=-1時(shí)結(jié)束程序。
標(biāo)簽: 方塊
上傳時(shí)間: 2013-12-16
上傳用戶:風(fēng)之驕子
#include <malloc.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #define NULL 0 #define MaxSize 30 typedef struct athletestruct /*運(yùn)動(dòng)員*/ { char name[20]; int score; /*分?jǐn)?shù)*/ int range; /**/ int item; /*項(xiàng)目*/ }ATH; typedef struct schoolstruct /*學(xué)校*/ { int count; /*編號(hào)*/ int serial; /**/ int menscore; /*男選手分?jǐn)?shù)*/ int womenscore; /*女選手分?jǐn)?shù)*/ 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輸入運(yùn)動(dòng)項(xiàng)目序號(hào) (x<=%d):",ntsp); scanf("%d",pafirst); overgame = *pafirst; if ( pafirst != phead ) { for ( pasecond = phead ; pasecond < pafirst ; pasecond ++ ) { if ( overgame == *pasecond ) { printf("\n這個(gè)項(xiàng)目已經(jīng)存在請(qǐng)選擇其他的數(shù)字\n"); goto Is_Game_DoMain; } } } pafirst = pafirst + 1; if ( overgame > ntsp ) { printf("\n項(xiàng)目不存在"); printf("\n請(qǐng)重新輸入"); 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輸入序號(hào) of the NO.%d (0<x<=%d): ",i,nsc); scanf("%d",&serial); if ( serial > nsc ) { printf("\n超過(guò)學(xué)校數(shù)目,請(qǐng)重新輸入"); 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繼續(xù)輸入運(yùn)動(dòng)項(xiàng)目(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號(hào)學(xué)校的結(jié)果成績(jī):",pfirst->serial); printf("\n\n項(xiàng)目的數(shù)目\t學(xué)校的名字\t分?jǐn)?shù)"); 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按任意建 進(jìn)入下一頁(yè)"); getchar(); pfirst = pfirst->next; } // clrscr(); printf("\n運(yùn)動(dòng)會(huì)結(jié)果:\n\n學(xué)校編號(hào)\t男運(yùn)動(dòng)員成績(jī)\t女運(yùn)動(dòng)員成績(jī)\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按任意建結(jié)束"); 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("文件已經(jīng)成功保存\n"); } void main() { system("cls"); printf("\n\t\t\t 運(yùn)動(dòng)會(huì)分?jǐn)?shù)統(tǒng)計(jì)\n"); printf("輸入學(xué)校數(shù)目 (x>= 5):"); scanf("%d",&nsc); printf("輸入男選手的項(xiàng)目(x<=20):"); scanf("%d",&msp); printf("輸入女選手項(xiàng)目(<=20):"); scanf("%d",&wsp); ntsp = msp + wsp; phead = (int *)calloc(ntsp,sizeof(int)); pafirst = phead; pasecond = phead; input(); calculate(); output(); Save(); }
標(biāo)簽: 源代碼
上傳時(shí)間: 2016-12-28
上傳用戶:150501
#include<stdio.h> #include<windows.h> int xuanxiang; int studentcount; int banjihao[100]; int xueqihao[100][10]; char xm[100][100]; int xuehao[100][10]; int score[100][3]; int yuwen; int shuxue[000]; int yingyu[100]; int c[100]; int p; char x[1000][100]="",y[100][100]="";/*x學(xué)院 y專業(yè) z班級(jí)*/ int z[100]; main() { void input(); void inputsc(); void alter(); void scbybannji(); printf("--------學(xué)生成績(jī)管理-----\n"); printf("請(qǐng)按相應(yīng)數(shù)字鍵來(lái)實(shí)現(xiàn)相應(yīng)功能\n"); printf("1.錄入學(xué)生信息 2.錄入學(xué)生成績(jī) 3.修改學(xué)生成績(jī)\n"); printf("4.查詢學(xué)生成績(jī) 5.不及格科目及名單 6.按班級(jí)輸出學(xué)生成績(jī)單\n"); printf("請(qǐng)輸入你要實(shí)現(xiàn)的功能所對(duì)應(yīng)的數(shù)字:"); scanf("%d",&xuanxiang); system("cls"); getchar(); switch (xuanxiang) { case 1:input(); case 2:inputsc(); case 3:alter(); /*case 4:select score(); case 5:bujigekemujimingdan();*/ case 6:scbybanji; } } void input() { int i; printf("請(qǐng)輸入你的學(xué)院名稱:"); gets(x); printf("請(qǐng)輸入你的專業(yè)名稱:"); gets(y); printf("請(qǐng)輸入你的班級(jí)號(hào):"); scanf("%d",&z); printf("請(qǐng)輸入你們一個(gè)班有幾個(gè)人:"); scanf("%d",&p); system("cls"); for(i=0;i<p;i++) { printf("請(qǐng)輸入第%d個(gè)學(xué)生的學(xué)號(hào):",i+1); scanf("%d",xuehao[i]); getchar(); printf("請(qǐng)輸入第%d個(gè)學(xué)生的姓名:",i+1); gets(xm[i]); system("cls"); } printf("您已經(jīng)錄入完畢您的班級(jí)所有學(xué)生的信息!\n"); printf("您的班級(jí)為%s%s%s\n",x,y,z); /*alter(p);*/ } void inputsc() { int i; for(i=0;i<p;i++) { printf("\n"); printf("--------------------------------------------------------------------------------\n\n"); printf("\t\t\t\t錄入學(xué)生的成績(jī)\n\n\n"); printf("--------------------------------------------------------------------------------\n\n"); printf("\t\t\t\t%s\n",xm[i]); printf("\n"); printf("\t\t\t\t數(shù)學(xué):"); scanf("%d",&shuxue[i]); printf("\n"); getchar(); printf("\t\t\t\t英語(yǔ):"); scanf("%d",&yingyu[i]); printf("\n"); getchar(); printf("\t\t\t\tc語(yǔ)言:"); scanf("%d",&c[i]); system("cls"); } } void alter() { int i;/*循環(huán)變量*/ int m[10000];/*要查詢的學(xué)號(hào)*/ int b;/*修改后的成績(jī)*/ char kemu[20]=""; printf("請(qǐng)輸入你要修改的學(xué)生的學(xué)號(hào)"); scanf("%d",&m); for (i=0;i<p;i++) { if (m==xuehao[i]) { printf("%s的數(shù)學(xué)成績(jī)?yōu)?d,英語(yǔ)成績(jī)?yōu)?d,c語(yǔ)言成績(jī)?yōu)?d,xm[i],shuxue[i],yingyu[i],c[i]"); printf("請(qǐng)輸入你想修改的科目");} } gets(kemu); getchar(); if (kemu=="數(shù)學(xué)"); { scanf("%d",&b); shuxue[i]=b;} if (kemu=="英語(yǔ)"); { scanf("%d",&b); yingyu[i]=b;} if (kemu=="c語(yǔ)言"); { scanf("%d",&b); c[i]=b; } printf("%s的數(shù)學(xué)成績(jī)?yōu)?d,英語(yǔ)成績(jī)?yōu)?d,c語(yǔ)言成績(jī)?yōu)?d,xm[i],shuxue[i],yingyu[i],c[i]"); } void scbybannji() { int i; char zyname[20]; int bjnumber; printf("請(qǐng)輸入你的專業(yè)名稱"); scanf("%s",&zyname); printf("請(qǐng)輸入你的班級(jí)號(hào)"); scanf("%d",&bjnumber); for (i=0;i<p;i++) { if (zyname==y[i]); if (bjnumber==z[i]); printf("專業(yè)名稱%s班級(jí)號(hào)%d數(shù)學(xué)成績(jī)%d英語(yǔ)成績(jī)%dc語(yǔ)言成績(jī)%d,y[i],z[i],shuxue[i],yingyu[i],c[i]"); } }
標(biāo)簽: c語(yǔ)言
上傳時(shí)間: 2018-06-08
上傳用戶:2369043090
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1