資料結構c語言描述,資料結構(C語言描述)

時間 2021-07-12 17:40:30

1樓:匿名使用者

#include

#include

#include

#define datatype int

#define maxsize 1000

typedef struct nodebitreenode;

datatype bt[maxsize];

bitreenode* buildbtree(datatype bt, int n, int i)

void printlevel(bitreenode * bt, int level, int l)

/* 先序凹入表示法輸出, 一般通過前導的空格來凹入 #*//*pre,sur分別為前導後續字元,一般前導為空格字元,#*/void printtree(bitreenode *bt,char pre,char sur,int depth,int level)

void ctbt(int n)

int main()

printf("\n");

printtree(bt,' ','-',depth,1);

return 0;

}經除錯這個沒問題,完成了要求的三個功能

2樓:西北戰狼

這個我會,可以幫你寫!

資料結構(c語言描述) 線性表實驗

3樓:小欸如是說

#include

#include

#define list_init_size 100

#define listincrement 10

typedef structsqlist;

//sqlist sq;

void initlist_sq(sqlist *sq) //初始化列表

void getelem(sqlist *sq,int i)//獲取第i位置元素的值

int listinsert_sq(sqlist *sq,int i,int a)//在i位置之前插入a

if(sq->length>=sq->listsize)

sq->elem=newbase;

sq->listsize+=listincrement;

}p=&(sq->elem[i-1]);//p指向第i位置的元素

q=&(sq->elem[sq->length-1]);//q指向最後一個元素

for(;q>=p;--q) *(q+1)=*q;

*p=a;

++sq->length;

return 1;

}int listdelete_sq(sqlist *sq,int i) //刪除i位置上的值

--sq->length;

return 1;

}void visit(sqlist *sq)//輸出資料

}void main()

else

}printf("輸出所有元素\n");

visit(sq);

printf("\n");

printf("輸出刪除的位置:");

scanf("%d",&a);

if(boo=listdelete_sq(sq,a))

else

printf("輸出所有元素:\n");

visit(sq);

printf("\n");

printf("輸出要顯示資料的位置:");

scanf("%d",&a);

printf("輸出%d位置數值\n",a);

if(a<0||a>sq->length)

else

}以上是可直接執行的源程式

執行結果:

---申請空間成功---!

初始化空表

輸入資料個數:

3輸入1個資料:3

---插入成功!---

輸入2個資料;8

---插入成功!---

輸入3個資料:5

---插入成功!---

輸出所有元素:3 5 8

輸出刪除的位置:2

---資料刪除成功!---

輸出所有元素;3 8

輸出要顯示資料的位置:2

"輸出2位置數值:8

4樓:凌雲紫冥

真的好簡單。。 是課設麼。62616964757a686964616fe59b9ee7ad9431333264633437。

幫人寫過c++的 參考下下 一點都不會就只好等其他人給你答案了。。

#include

#include

#include

using namespace std;

#define maxsize 100

typedef struct

datatype;

typedef struct

sqlist;

void intput(sqlist &l, int i)

建表

插入

else

intput(l, n - 1);

++l.last;}}

刪除

else

--l.last;}}

查詢

, temp_num[4] = ;

cout << "1.按編號查詢\n2.按名字查詢\n請選擇:";

cin >> choose;

if (choose == 1)

else if (choose == 2)

else

for (int i = 0; i < l.last; ++i)

if (choose == 2 && strcmp(temp_name, l.data[i].name) == 0)

}cout << "沒有這樣的學生資訊" << endl;

讀表元

else

輸出

else}}

int main()

;int choose, n;

while (true)

break;

case 2:

break;

case 3:

break;

case 4: searchlist(l); break;

case 5:

break;

case 6: printlist(l); break;

case 7: exit(0); break;

default: cout << "輸入有誤" << endl; break;

}system("pause");

system("cls");

}return 0;}

5樓:王者之班

#include

#include

#define maxsize 1000

typedef int datatype;

typedef struct nodeseqlist,*pseqlist;

pseqlist init_seqlist(void)

int insert_seqlist(pseqlist seqlistpoint,int i,datatype x)

if(seqlistpoint->length>=maxsize)

if(i<1||i>seqlistpoint->length+1)

for(j=seqlistpoint->length-1;j>=i-1;j--)

seqlistpoint->data[j+1]=seqlistpoint->data[j];

seqlistpoint->data[i-1]=x;

seqlistpoint->length++;

return 1;

}int delete_seq(pseqlist seqlistpoint,int t,int x)

switch(t)

printf("該表中不存在該元素!");

return 0;

case 2:

if(x<1||x>seqlistpoint->length)

for(i=x;ilength;i++)

seqlistpoint->data[i-1]=seqlistpoint->data[i];

seqlistpoint->length--;

printf("你已經成功刪除%d位置的元素\n",x);

break;

default:

break;

}return 0;

}int location_seqlist(pseqlist seqlistpoint,datatype x)

while(ilength&&seqlistpoint->data[i]!=x)

i++;

if(i>=seqlistpoint->length)

return 0;

else

return (i+1);

}int print_seqlist(pseqlist seqlistpoint)

if(!seqlistpoint->length)

printf("表中元素:\n");

for(i=0;ilength;i++)

printf("%d ",seqlistpoint->data[i]);

return 1;

}void destroy_seqlist(pseqlist *seqlistpoint)

int main()

seqlistpoint=init_seqlist();

printf("你已經建立了一個表!\n");

flag++;

break;

case 2:

system("cls");

if(!flag)

printf("請選擇插入位置\n");

printf("[1]直接插入\n");

printf("[2]選擇插入\n");

printf("請輸入運算元:");

scanf("%d",&num);

switch(num)

return 0;

default:

printf("您的輸入有誤!!!");

}printf("\n按enter鍵繼續");

scanf("%c",&ch);

scanf("%c",&ch);

system("cls");}}

程式執行結果截圖如下:

主畫面:

選擇運算元1,建立一個線性表:

按enter鍵繼續,返回主畫面,

選擇運算元2,在表中插入記錄,

選擇插入位置,選擇1,直接插入,

輸入n=5,插入5個記錄,

按enter鍵繼續,返回主畫面,選擇運算元【3】刪除表中的記錄,選擇【1】按元素刪除,輸入刪除的元素55如下,

按enter鍵繼續,返回主畫面,選擇運算元【5】檢視錶中的元素

記錄55已經成功刪除

按enter鍵繼續,返回主畫面,選擇運算元【3】刪除表中的記錄,選擇【1】按元素刪除,輸入刪除的元素22如下,

表中不存在記錄22,所以刪除失敗。

截過圖,貼上不進去,如果你把分給我,我把**和截圖發給你

C語言資料結構,C語言 資料結構

include include defineinfinity0 definemax vertex num10 最大頂點數 definemax edge num40 最大邊數typedefenumgraphkind typedefcharvertextype 頂點資料型別typedefstructar...

資料結構(使用C語言)佇列,資料結構C語言佇列執行不了

include stdio.h include malloc.h include stdlib.h include conio.h define max 80 typedef struct seque seque init seque int empty seque seque s int in s...

c語言中資料結構含義,C語言中資料結構含義

資料的邏輯結構 可以理解為陣列的組成,比如一個結構體有三個int變數組成,這個時候可以認為其邏輯組成是有三個int的變數構成的 資料的儲存結構,可以理解為資料在記憶體中得組織方式,比如說陣列一般是連續儲存,連結串列可能是連續儲存也可能是分佈儲存 資料的運算,簡單說就是對資料的操作,是中行為過程 在資...