//Sorry,看來我理解錯了,這是改后的》》》》》》》》
青龍ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
//順序棧
#includestdio.h
#includestdlib.h
#define MAXSIZE 100
typedef struct
{
int data[MAXSIZE];
int top;
}SqStack;
void PushStack(SqStack *S,int x) //入棧
{
if(S-top==MAXSIZE-1) printf("棧已滿,不能入棧!\n");
else
}
void PopStack(SqStack *S) //退棧
{
if(S-top==-1) printf("棧為空,不能出棧!\n");
else
}
int GetStackTop(SqStack S) //取棧頂元素
{
return S.data[S.top];
}
main()
{
int x,i;
SqStack myStack;
myStack.top=-1;
do
{
printf("請選擇你需要的操作:\n1.置空棧.\n2.進棧.\n3.退棧.\n4.取棧頂元素.\n5.退出程序.\n(請輸入1或2或3或4或5):");
scanf("%d",i);
switch(i)
{
case 1:myStack.top=-1;printf("棧已置空!\n");break;
case 2:printf("請輸入你要進棧的元素:");
scanf("%d",x);
PushStack(myStack,x);break;
case 3:PopStack(myStack);break;
case 4:if(myStack.top!=-1) printf("棧頂元素是 %d.\n",GetStackTop(myStack));
else printf("棧為空,沒有元素!\n");break;
case 5:break;
default:printf("選擇錯誤,請重新輸入!\n");break;
}
}while(i!=5);
return 0;
}
//鏈棧
#includestdio.h
#includestdlib.h
typedef struct SNode
{
int data;
struct SNode *next;
}SNode,*LinkStack;
LinkStack top;
LinkStack PushStack(LinkStack top,int x) //入棧
{
LinkStack s;
s=(LinkStack)malloc(sizeof(SNode));
s-data=x;
s-next=top;
top=s;
return top;
}
LinkStack PopStack(LinkStack top) //退棧
{
LinkStack p;
if(top!=NULL)
{
p=top;
top=top-next;
free(p);
printf("退棧已完成\n");
return top;
}
else printf("棧是空的,無法退棧!\n"); return 0;
}
int GetStackTop(LinkStack top) //取棧頂元素
{
return top-data;
}
main()
{
int i,x;
do
{
printf("請選擇你需要的操作:\n1.置空棧.\n2.進棧.\n3.退棧.\n4.取棧頂元素.\n5.退出程序.\n(請輸入1或2或3或4或5):");
scanf("%d",i);
switch(i)
{
case 1:top=NULL;break;
case 2:printf("請輸入你要進棧的元素:");
scanf("%d",x);
top=PushStack(top,x);
printf("進棧已完成!\n");break;
case 3:top=PopStack(top);break;
case 4:if(top!=NULL) printf("棧頂元素是:%d!\n",GetStackTop(top));
else printf("棧是空的,沒有元素!\n");break;
case 5:break;
default:printf("選擇錯誤,請重新輸入!\n");break;
}
}while(i!=5);
return 0;
}
main(),在c語言中稱之為“主函數(shù)”,一個c程序有且僅有一個main函數(shù),任何一個c程序總是從main函數(shù)開始執(zhí)行,main函數(shù)后面的一對圓括號不能省略。
具體形式如下:
main()
{ ? }
被大括號{ }括起來的內容稱為main函數(shù)的函數(shù)體,這部分內容就是計算機要執(zhí)行的內容。
在{ ?}里面每一句話后面都有一個分號(;),在c語言中,我們把以一個分號結尾的一句話叫做一個c語言的語句,分號是語句結束的標志。
擴展資料:
函數(shù)是一組一起執(zhí)行一個任務的語句。每個 C 程序都至少有一個函數(shù),即主函數(shù)?main()?,所有簡單的程序都可以定義其他額外的函數(shù)。
您可以把代碼劃分到不同的函數(shù)中。如何劃分代碼到不同的函數(shù)中是由您來決定的,但在邏輯上,劃分通常是根據(jù)每個函數(shù)執(zhí)行一個特定的任務來進行的。
函數(shù)聲明告訴編譯器函數(shù)的名稱、返回類型和參數(shù)。函數(shù)定義提供了函數(shù)的實際主體。
C 標準庫提供了大量的程序可以調用的內置函數(shù)。例如,函數(shù)?strcat()?用來連接兩個字符串,函數(shù)?memcpy()?用來復制內存到另一個位置。
函數(shù)還有很多叫法,比如方法、子例程或程序,等等。
參考資料來源:百度百科-C語言函數(shù)
你這是數(shù)據(jù)結構中的隊列問題,而不是棧的問題。head代表的是隊列頭,刪除時刪的是隊列頭元素,tail代表的是隊列尾,插入時插的是隊列尾元素
程序中這條語句是錯誤的。中括號只有一半,那一半呢? *p_y=qp++head];
至于要求的主函數(shù),如果是隊列問題還要涉及的是一般隊列還是循環(huán)隊列,因此沒法寫給你。
網(wǎng)頁題目:c語言棧的主函數(shù),c語言實現(xiàn)棧的基本操作
鏈接地址:http://vcdvsql.cn/article10/hshgdo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供電子商務、網(wǎng)站收錄、App開發(fā)、靜態(tài)網(wǎng)站、網(wǎng)站設計、網(wǎng)頁設計公司
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)