欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解c/c++鏈?zhǔn)蕉褩C枋鲞M(jìn)制轉(zhuǎn)換問題示例

 更新時間:2021年11月18日 10:50:49   作者:xr415  
這篇文章主要為大家介紹了c/c++鏈?zhǔn)蕉褩C枋鲞M(jìn)制轉(zhuǎn)換問題示例解析有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步

基礎(chǔ)操作需要創(chuàng)建鏈表來存儲數(shù)據(jù)

使用尾插法和尾刪法來表示棧中的入棧和出棧

typedef struct node
{
	int data;
	struct node* next;
}Node,*LPNode;
LPNode creatnode(int data)
{
	LPNode newnode = (LPNode)malloc(sizeof(Node));
	assert(newnode);
	newnode->data = data;
	newnode->next = NULL;
	return newnode;
}
void insertbytail(LPNode &head,int data)
//這里要么傳引用要么傳二級指針因為這里head賦值并沒有對主函數(shù)里面的head改變
{ 
	if (head == NULL)
	{
		head = creatnode(data);
	}
	else
	{
		LPNode newnode = creatnode(data);
		LPNode pmove = head;
		while (pmove->next!=NULL)
		{
			pmove = pmove->next;
		}
		pmove->next = newnode;
	}
}
void deletetail(LPNode head)
{
	LPNode pronode = head;
	if (head == NULL)
	{
		return;
	}
	LPNode posnode = head->next;
	
	if (pronode->next == NULL)
	{
		cout << pronode->data;
		free(pronode);
		return;
	}
	while (posnode->next!= NULL)
	{
		pronode = posnode;
		posnode = posnode->next;
	}
	cout << posnode->data ;
	free(posnode);
	pronode->next = NULL;
}

創(chuàng)建棧結(jié)構(gòu)

typedef struct stack
{
	int top;//用來判斷是否為空
	LPNode head;
}Stack,*LPStack;
//描述一個棧的最初始的狀態(tài)
LPStack creatstack()
{
	LPStack stack = (LPStack)malloc(sizeof(Stack));
	assert(stack);
	stack->top = 0;
	stack->head = NULL;
	return stack;
}

出棧入棧就是表現(xiàn)為鏈?zhǔn)浇Y(jié)構(gòu)的表尾插入和刪除

void push(LPStack stack,int data)
{
	insertbytail(stack->head, data);
	stack->top++;
}
void pop(LPStack stack)
{
	deletetail(stack->head);
	stack->top--;
}

判斷棧是否為空即判斷 top==0

bool empty(LPStack stack)
{
	return stack->top == 0;
}

代碼實現(xiàn)

int main()
{
	LPNode head = NULL;
	LPStack stack = creatstack();
	int n;
	int num;
	cin >> num;//表示數(shù)
	cin >> n;//表示進(jìn)制
	while (num)
	{
		push(stack,num%n );
		num /= n;
	}
	while (!empty(stack))
	{
		pop(stack);
	}
	
	return 0;
}

以上就是c/c++鏈?zhǔn)蕉褩C枋鲞M(jìn)制轉(zhuǎn)換問題示例解析的詳細(xì)內(nèi)容,更多關(guān)于c/c++鏈?zhǔn)蕉褩C枋鲞M(jìn)制轉(zhuǎn)換的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解C語言數(shù)組中是以列優(yōu)先嗎

    詳解C語言數(shù)組中是以列優(yōu)先嗎

    這篇文章主要給大家介紹了關(guān)于C語言指針名稱及所指變量的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用C語言具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 一篇文章讓你輕松理解C++中vector和list區(qū)別

    一篇文章讓你輕松理解C++中vector和list區(qū)別

    對于學(xué)c語言的同學(xué)來說,vector和list這兩個東西經(jīng)常會搞錯,下面這篇文章主要給大家介紹了關(guān)于C++中vector和list區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • C++的靜態(tài)成員變量和靜態(tài)成員函數(shù)詳解

    C++的靜態(tài)成員變量和靜態(tài)成員函數(shù)詳解

    這篇文章主要為大家介紹了C++的靜態(tài)成員變量和靜態(tài)成員函數(shù),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • C/C++ memset方法的誤區(qū)

    C/C++ memset方法的誤區(qū)

    memset 作為對內(nèi)存初始化的函數(shù),還是有不少坑和誤區(qū)的,今天就來對這個函數(shù)作一個總結(jié)。避免后期使用不當(dāng)踩入坑,需要的朋友可以參考下
    2021-04-04
  • C++ 關(guān)于MFC List Control 控件的總結(jié)

    C++ 關(guān)于MFC List Control 控件的總結(jié)

    這篇文章主要介紹了C++ 關(guān)于MFC List Control 控件的總結(jié)的相關(guān)資料,十分的詳細(xì),有需要的朋友可以參考下
    2015-06-06
  • c++靜態(tài)局部變量和靜態(tài)函數(shù)示例

    c++靜態(tài)局部變量和靜態(tài)函數(shù)示例

    這篇文章主要介紹了c++靜態(tài)局部變量和靜態(tài)函數(shù)示例,需要的朋友可以參考下
    2014-04-04
  • 使用C++一步步實現(xiàn)俄羅斯方塊

    使用C++一步步實現(xiàn)俄羅斯方塊

    本文給大家分享的是作者在使用C++制作俄羅斯方塊的時候的思路分析以及開發(fā)準(zhǔn)備和實驗原理,都是些基礎(chǔ)的知識儲備,希望大家能夠喜歡,具體的代碼我們下一節(jié)再分享給大家
    2017-12-12
  • C/C++實現(xiàn)通訊錄管理系統(tǒng)(附源碼)

    C/C++實現(xiàn)通訊錄管理系統(tǒng)(附源碼)

    這篇文章主要為大家詳細(xì)介紹了如何利用C++實現(xiàn)通訊錄管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-12-12
  • C語言實現(xiàn)選票統(tǒng)計

    C語言實現(xiàn)選票統(tǒng)計

    這篇文章主要為大家詳細(xì)介紹了C語言實現(xiàn)選票統(tǒng)計,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • C++中對象&類的深入理解

    C++中對象&類的深入理解

    這篇文章主要給大家介紹了關(guān)于C++中對象&類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05

最新評論