亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

數據結構用c語言進行順序表的插入操作為什么前面一個表能顯示后面一個不能?

數據結構用c語言進行順序表的插入操作為什么前面一個表能顯示后面一個不能?

慕設計4085518 2016-10-15 11:31:16
void main(){#ifdef Se? ?SqList La,Lb;? ?Status h;? ?int j, n=5, k;? ?h=InitList(&La); ? /* 返回值可用于判斷是否創建成功 */ ? ? ? ?? ?if(h=0); ? ?/* 創建空表La成功 */? ? ?for(j=1;j<=n;j++) ?/* 在表La中插入5個元素1 2 3 4 5 */? ? ? ?h=ListInsert(&La,j,j);? ?printf("表中元素La = "); ? ? ?/* 輸出表La的內容 */? ?for(j=0;j<=n;j++)? ? ?printf("%4d",La.elem[j]);? ? ?printf("\n");? ?printf("再插入一個元素99\n");? ? ?ListInsert(&La,j,99);? ?printf("表中元素La = ");? ?for(j=0;j<=n;j++)? ? ?printf("%4d",La.elem[j]);? ? ?printf("\n");#else? ?SqList Lb;? ?int j, n=5, k;? ?InitList(&Lb);? ?for(j=1;j<=n;j++) /* 在表Lb中插入5個元素2 4 6 8 10 */? ? ?ListInsert(&Lb,j,2*j);? ?printf("表Lb = "); /* 輸出表Lb的內容 */? ?for(j=0;j<n;j++)? ? ?printf("%4d",Lb.elem[j]);? ? ?printf("\n");? ? ?printf("再插入一個元素88\n");? ? ?ListInsert(&La,j,88);? ?printf("表中元素Lb = ");? ?for(j=0;j<=n;j++)? ? ?printf("%4d",Lb.elem[j]);? ? ?printf("\n");表A能夠顯示出來 表b不能顯示出來?有同學說是前面se沒有進行消除,為什么要消除?怎么樣消除?
查看完整描述

1 回答

?
這個人居然用鼻孔懟我

TA貢獻1條經驗 獲得超0個贊

樓主代碼并未給全。

#ifdef,#else,#endif是一個三段式的條件編譯結構,根據樓主給出的部分語句,用法應如下:

????#ifdef SE ? ? //若SE通過#define(一般情況下)被定義則執行if之后,else之前的程序。

????#else ? ? ? ? ? //否則則執行else之后,endif之前的程序。

????#endif ? ? ? ?//用于末尾,結束條件編譯。

若想改變輸出結果,則需建立或刪除對SE(一般情況下為#define SE X,X為任意值)的定義即可(整句刪除可執行else,再添加該句可執行if)。

查看完整回答
反對 回復 2016-10-19
  • 1 回答
  • 1 關注
  • 2001 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號