1. 程式人生 > >c 程式設計語言 第二版 練習題 6-5

c 程式設計語言 第二版 練習題 6-5

int undef(char *s) {
	if (s == NULL)
		return -1;
	nlist *np,*temp=NULL;
	int flag = 0;
	for (np = hashtab[hash(s)];np != NULL;np = np->next) {
		if (strcmp(np->name, s) == 0) {
			if (flag == 0) {//flag是0說明要刪除的是第一個節點
				hashtab[hash(s)] = np->next; //hashval下標指向原第一個節點的下一個節點
			}
			else
			{
				//不是第一個節點 ,上一個節點指向np下一個節點
				temp->next = np->next;				
			}
			free(np->name);//釋放當前節點
			free(np);
			return 0;
		}
		++flag;//標識增加
		temp = np;//記錄上一個節點
	}
	return -1;
}

相關推薦

c 程式設計語言 第二 練習題 6-5

int undef(char *s) { if (s == NULL) return -1; nlist *np,*temp=NULL; int flag = 0; for (np = hashtab[hash(s)];np != NULL;np = np-&g

c 程式設計語言 第二 練習題 5-4

int strend(const char *s, const char *t) { if (s == NULL || t == NULL) return -1; const char *ts = s; const char *tt = t; while (

c 程式設計語言 第二 練習題 5-2

double getfloat(double *pn) { if (pn == NULL) return -1; int c, sign, flag=1; while (isspace(c = getchar())); if (!isdigit(c) &

C++程式設計語言(特別)pdf

下載地址:網盤下載內容簡介編輯《C++程式設計語言(特別版·十週年中文紀念版)》一部在C++語言和程式設計領域具有深遠影響、暢銷不衰的著作,英文原版一經面世,即引起業內人士的高度評價和熱烈歡迎,先後被翻

C語言程式設計第二)第6程式設計

1:找出與平均值相差最小的元素 #include"stdio.h" #include"math.h" #define N 10 void main() { int i; double a[N],v=0,min; printf("Please input

C語言程式設計第二新版)》第一章習題解答(部分)

1-20 //My solution:先將輸入字串儲存至陣列,將其detab後存入另一陣列,然後列印該陣列 #include <stdio.h> #define MAXLINE 100 #define TABSIZE 8 #define TAB '\t' in

C程式設計語言第二)-讀書筆記

The C Programming Language 1. 設計一個程式,作用為無限字元輸出: int c; printf(“Please in put the char …\n”); //getc

c程式設計語言第二)學習】20160326

\b 退格 printf("請輸入您的身高:______英寸\b\b\b\b\b\b\b\b\b", ); %e 用法 #include<stdio.h> int main(void) { float a; printf("please input

資料結構C語言第二(53頁作業)

#include<iostream> using namespace std; typedef struct //定義順序表 { int *elem; int length; }SqList; typedef struct LNode //定義單向連結串列 { int dat

C程式設計語言(第2)簡單讀書筆記

最近重新看了C語言聖經,查漏補缺,記了簡單的筆記,全部來自原書,共9866字,記錄一下。  騰訊文件地址:https://docs.qq.com/doc/DUmt5VU5Tem1LQUxx 第一章 導言   c語言中一個通用的例項:在允許使用某種型別變數值的任何場合,都可以使用該型別的更復雜的

圍圈報數遊戲(C程式設計第四第八章第5題)

題目描述:有n個人圍成一圈,順序排號,從第一個人開始報數,從1到3報數,凡報到3的人退出圈子,問最後留下來的幸運者是原來的幾號。 #include<stdio.h> #include<stdlib.h> #include<assert.h>

c程式設計語言 2-4 2-5

第五彈! 第五彈!第五彈! #include <stdio.h> #define max 1000 void InputSpring(char s[]); //void mySqueeze(char s1[],char s2[]); void any(char s

C++程式設計語言練習4.6 區域性名字和外部名字的長度限制

書中程式碼,利用模板副檔名字長度#include <iostream> #include <typeinfo> template<typename T,typename U> struct Doublify{}; template&l

C++ GUI Qt 4程式設計第二

利用奇趣科技公司(Trolltedl)的Qt應用程式框架,可以構建出工業級的跨平臺應用程式。在原始碼不經任何修改的情況下,這些程式即可流暢運行於Windows、Linu/UNIX、Mac OS X和嵌入式Linux上“一次編寫,隨處編譯”。 本書對Qt進行了全面介紹,充分展示了Qt程式開發模式中的每一個

C程式設計語言4-6課後題參考答案不正確

4-6如果採用官方“配套”(其實是另外的人寫的)參考書的話,答案程式碼是不正確的,無法順利達到目的。不過稍加修改即可: 首先,全域性定義var引數(名字自己定),main程式碼和推薦的一致: int var;//定義var在這裡 main(){ int type,

C程序設計語言 第二 新版 第二章 自用

return abi ++ bits signed 第二版 2-2 c程序設計 第二章 2-1#include<stdio.h>int main(){printf("char:\n");printf("max %d\n",(char)((unsigned cha

C程式設計語言》 練習3-5

問題描述   練習 3-5 編寫函式 itob(n, s, b),將整數n轉換為以b為底的數,並將轉換結果以字元的形式儲存到字串s中。例如,itob(n, s, 16)把整數n格式化成十六進位制整數儲存在s中。   Write the function itob(n,s,b) that c

第一章,前言-數字圖像處理自學筆記(Rafael C.Gonzalez,英文第二

different ges 包含 系統 標簽 之一 tro with proc 什麽是數字圖像處理?   數字圖像:坐標對應,幅值有限且離散   數字圖像處理:利用數字計算機,對數字圖像進行處理。   初級數字圖像處理:輸入為圖片,輸出也為圖片,如銳化、增強對比度、去噪等。

使用Teamviewer遠程桌面CentOS 6.5

teamviewer centos1.下載、安裝並運行Teamviewer# wget https://dl.tvcdn.de/download/version_12x/teamviewer_12.0.85001.i686.rpm # yum install teamviewer_12.0.85001.i6

C程式設計語言(六)UNIX系統介面

系統介面和標準的C庫,是不同的兩個範疇。 標準C庫,各個平臺的C編譯器都應該支援,具有跨平臺的性質。 系統介面則是系統相關的,UNIX的系統介面,在Win上就肯定不能用。 那麼兩者是不是還有聯絡呢,其實是的。標準C庫,跟系統相關的部分,不也是通過系統呼叫/系統介面實現的麼。所以系