![結(jié)構(gòu)體鏈表綜合習題_第1頁](http://file4.renrendoc.com/view/c4fe765d79d0d04acfe01d8288c1a742/c4fe765d79d0d04acfe01d8288c1a7421.gif)
![結(jié)構(gòu)體鏈表綜合習題_第2頁](http://file4.renrendoc.com/view/c4fe765d79d0d04acfe01d8288c1a742/c4fe765d79d0d04acfe01d8288c1a7422.gif)
![結(jié)構(gòu)體鏈表綜合習題_第3頁](http://file4.renrendoc.com/view/c4fe765d79d0d04acfe01d8288c1a742/c4fe765d79d0d04acfe01d8288c1a7423.gif)
![結(jié)構(gòu)體鏈表綜合習題_第4頁](http://file4.renrendoc.com/view/c4fe765d79d0d04acfe01d8288c1a742/c4fe765d79d0d04acfe01d8288c1a7424.gif)
![結(jié)構(gòu)體鏈表綜合習題_第5頁](http://file4.renrendoc.com/view/c4fe765d79d0d04acfe01d8288c1a742/c4fe765d79d0d04acfe01d8288c1a7425.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
以下說法中正確的是:
。A:一個結(jié)構(gòu)只能包含一種數(shù)據(jù)類型B:不同結(jié)構(gòu)中的成員不能有相同的成員名C:兩個結(jié)構(gòu)變量不可以進行比較D:關(guān)鍵字typedef用于定義新的數(shù)據(jù)類型C結(jié)構(gòu)體、鏈表綜合習題設(shè)有以下說明,則值為210的表達式是:
。structs{inta;int*b;};intx0[]={110,120},x1[]={210,220};structsx[]={{100},{200}},*p=x;x[0].b=x0;x[1].b=x1;A:*p->bB.(++p)->aC.*(p++)->bD.*(++p)->bD結(jié)構(gòu)體、鏈表綜合習題struct{intx,y;}c[3]={{1,2},{2,3}};正確的語句是
。A:C[2]={3,4};B:C[2]=C[1];C:C[2]=C[1]-C[0];D:if(c[1]>c[0])c[2]=c[1];elsec[2]=c[0];B結(jié)構(gòu)體、鏈表綜合習題已知有如下的結(jié)構(gòu)類型定義和變量聲明:
structstudent{intnum;charname[10];}stu={1,”Mary”},*p=&stu;則下列語句錯誤的是_____A:printf(“%d”,stu.num);B:printf(“%d”,(&stu)->num);C:printf(“%d”,&stu->num);D:printf(“%d”,p->num);C結(jié)構(gòu)體、鏈表綜合習題已知有結(jié)構(gòu)類型定義:typedef
structex{longintnum;charsex;
structex*next;}student;下列敘述錯誤的是___________。structex是結(jié)構(gòu)類型student是結(jié)構(gòu)類型的變量名C.ex可缺省D.student不可缺省B結(jié)構(gòu)體、鏈表綜合習題若要使表達式“P++”無語法錯誤,則變量P不能聲明為___________。A.intP;B.doubleP;C.int*P;D.struct{intx;}P;D結(jié)構(gòu)體、鏈表綜合習題數(shù)組和鏈表都可以用于存儲一組彼此有關(guān)聯(lián)的數(shù)據(jù),以下說法中不正確的是:
A:數(shù)組占用一塊連續(xù)的存儲區(qū)域,鏈表可能占用若干不連續(xù)的存儲區(qū)域B:數(shù)組和鏈表所占用的存儲區(qū)域均不能在程序運行期間動態(tài)地分配C:數(shù)組中的數(shù)據(jù)可以隨機存取或順序存取,鏈表中的數(shù)據(jù)只能順序存取D:數(shù)組的長度是固定的,鏈表的長度是不固定的B結(jié)構(gòu)體、鏈表綜合習題值為6的表達式為
struct
st{intn;struct
st*next;}staticstruct
sta[3]={5,&a[1],7,&a[2],9,’\0’},*p;p=&a[0];A) p++->n B)p->n++C)(*p).n++ D)++p->n D結(jié)構(gòu)體、鏈表綜合習題對以下結(jié)構(gòu)體變量example中成員x的引用正確的是
struct
{intx;
inty;}example,*p=&example;(*p).example.xB)(*p).xC)p->exampleD)p.example.xB結(jié)構(gòu)體、鏈表綜合習題結(jié)構(gòu)體、鏈表綜合習題對于下列程序段:
structSD{intx;floaty;};
structSDa[3]={{1001,3.5},{1002,4.5},{1003,4.0}},*p;p=a;則下面不正確的使用是__________。A.(++p)->xB.p++C.(*p).yD.p=&a[0].xD結(jié)構(gòu)體、鏈表綜合習題若有以下程序段:
structSD{intx;int*r;};
inta=1,b=2,c=3;
structSDs[3]={{1001,&a},{1002,&b},{1003,&c}};main(){structSD*p;p=s;……}則以下表達式中值為2的是_________。A.*(++p)->rB.*(p++)->rC.(*p).rD.(p++)->rA結(jié)構(gòu)體、鏈表綜合習題有以下結(jié)構(gòu)體類型的說明和變量定義,并給出圖示,則選項中不能把結(jié)點b連接到a之后的語句是__________。
datanextdatanextabpq
structND{chardata;
structND*next;}a,b,*p=&a,*q=&b;a.next=q;B.p.next=&b;C.p->next=&b;D.(*p).next=q;B結(jié)構(gòu)體、鏈表綜合習題設(shè)有定義如下:typedef
struct{intx,y;}POINT;typedef
enum{RED,YELLOW,BLUE,GREEN}COLOR;struct{POINTxy;COLORc;}pixel,*p=&pixel;以下對變量pixel的賦值操作中正確的是
。A:pixel={1,2,BLUE};B:scanf(“%d%d%d%d”,p->xy.x,p->xy.y,&pixel.c);C:p->xy.x=1;p->xy.y=2;p->c=BLUE;D:scanf(“%d%d”,&pixel.xy);pixel.color=2;C設(shè)鏈表上的結(jié)點的數(shù)據(jù)結(jié)構(gòu)定義如下:structnode{
intx;
structnode*next;};
函數(shù)create的功能是:創(chuàng)建一個有序的鏈表(結(jié)點中x的值按升序排列),鏈表中結(jié)點的個數(shù)為參數(shù)n的值,函數(shù)返回該有序鏈表的頭指針。算法思想如下:每產(chǎn)生一個新結(jié)點,插入到鏈表中的恰當位置,使得插入新結(jié)點后的鏈表仍然保持有序。
(27)creat(intn){structnode*p,*p1,*p2,*h=NULL;inti=0;if(n<1)returnNULL;while((28)){p=(structnode*)malloc(sizeof(structnode));scanf(“%d”,&p->x);p->next=NULL;if(h==NULL)(29);else{p1=p2=h;while(p2&&p->x>=p2->x){p1=p2;p2=p2->next;}if(p2==h){(30);h=p;}else{p->next=p2;p1->next=p;}}i++;}returnh;}structnode*i<nh=pp->next=h已知某鏈表中結(jié)點的數(shù)據(jù)結(jié)構(gòu)定義如下:structnode{intx;
structnode*next;};函數(shù)find_del功能是:在參數(shù)head指向的鏈表中查找并刪除x值最大的結(jié)點,如有多個相同的x值最大的結(jié)點,刪除第一個結(jié)點,保存該結(jié)點的地址到pm指向的指針變量中,函數(shù)返回鏈表首結(jié)點的指針。structnode*find_del(structnode*head,structnode**pm){stuctnode*p1,*p2,*pmax,*pre;if(head==NULL)returnNULL;pmax=(1);p2=p1=pmax;while(p1){if(p1->x>
(2)){pre=p2;pmax=p1;}p2=p1;p1=p1->next;}if(pmax==head)head=pmax->next;else
(3)=pmax->next;
(4)=pmax;returnhead;}1head2pmax->x3pre->next4*pm設(shè)鏈表上的結(jié)點的數(shù)據(jù)結(jié)構(gòu)定義如下:structnode{intx;
structnode*next;};假設(shè)已經(jīng)建立了一個鏈表,h為鏈首指針。函數(shù)deladd的功能是:若鏈表上能找到結(jié)點的x值為value,則從鏈表上刪除該結(jié)點(假定鏈表上的各個結(jié)點的值是不同的);否則構(gòu)造一個新結(jié)點,其值為value,并將新結(jié)點插入鏈尾。該函數(shù)要求返回新鏈表的首指針。structnode*deladd(structnode*h,intvalue){structnode*p1,*p2;intflag=0;p1=p2=h;while(p1&&flag==0){if(p1->x==value){flag=1;if(p1==h){h=(1);free(p1);}else{p2->next=(2);free(p1);}}else{p2=p1;p1=(3);}}if(flag==0){p1=(structnode*)malloc(sizeof(structnode));p1->x=value;p1->next=0;if(h==0)h=p1;else(4);}returnh;}(1)h->next(2)p1->next(3)p1->next(4)p2->next=p1顛倒鏈表的鏈接順序structnode{intdata;
structnode*next;};reverse(structnode*h){structnode*p,*v1,*v2;_______________;v1=NULL;while(v2!=NULL){_________________;v2->next=v1;v1=v2;v2=p;}h=v1;returnh;}v2=hP=v2->next已知某鏈表中結(jié)點的數(shù)據(jù)結(jié)構(gòu)定義如下:#include<stdio.h>structnode{intx;structnode*next;};函數(shù)loop的功能是:根據(jù)dir的值循環(huán)移位head指向的鏈表中的所有結(jié)點,當dir為正數(shù)時實現(xiàn)循環(huán)右移一次,否則循環(huán)左移一次。函數(shù)返回鏈表首結(jié)點的指針。例如,移位前的鏈表數(shù)據(jù):head->1->3->5->4,
移一次后的鏈表數(shù)據(jù):head->4->1->3->5。算法提示:循環(huán)右移時,將鏈表最后一個結(jié)點刪除,再將其插入到鏈表首部;循環(huán)左移時,將鏈表第一個結(jié)點刪除,再將其連接到鏈表尾部。structnode*loop(structnode*head,intdir){structnode*p1,*p2;p1=head;if(p1==NULL||p1->next==NULL)returnhead;if(dir>=0){while(p1->next)
{p2=p1;p1=p1->next;}__(1)__=NULL;p1->next=_(2)__;
head=p1;}else{head=___(3)__;p2=head;while(p2->next)p2=p2->next;
_(4)_;p1->next=NULL;}returnhead;}(1)p2->next(2)head(3)p1->next(4)p2->next=p1.以下程序中函數(shù)padd的功能是:調(diào)整pa指向的鏈表中各結(jié)點的位置,使得所有x值為偶數(shù)的結(jié)點出現(xiàn)在鏈表的前半部,所有x值為奇數(shù)的結(jié)點出現(xiàn)在鏈表的后半部。#include<stdlib.h>typedef
structp{intx;structp*next;}PNODE;PNODE*padd(PNODE*pa){PNODE*p1,*p2,*p;p1=p2=pa;while(p1){if(p1->x%2==0&&(1)){p=p1;p1=p1->next;(2)=p1;p->next=pa;(3);}else{p2=p1;p1=p1->next;}}returnpa;}main(){PNODEa[10]={{1},{2},{3},{4},{5},{6},{7},{8},{9},{10}},*ha=a,*p;inti;for(i=0;i<9;i++)a[i].next=&a[i+1];a[9].next=(4);ha=padd(ha);p=ha;printf("\n");while(p){printf("%d->",p->x);p=p->next;}}(1)p1!=pa(2)p2->next(3)pa=p(4)NULL.下面程序用來從鍵盤上讀入一行字符,并按輸入順序建立一個鏈式結(jié)點序列,新添加的結(jié)點存入當前剛讀入的字符,讀入完成后,再按該鏈式序列的反向順序輸出這一行字符,最后,釋放全部結(jié)點空間。請在
處填入正確內(nèi)容。
#definegetnode(type)(type*)malloc(sizeof(type))#definenull0#include“stdio.h”main(){structnode{charinfo;
structnode*link;}*top,*p;charc;top=(1);while((c=getchar())!=’\n’){p=getnode((2));p->info=c;p->link=(3);top=(4);}while(top!=null){p=(5);top=(6);putchar(p->info);free(p);}}(1)null(2)structnode(3)top(4)p(5)top(6)top->link.設(shè)鏈表上的每個結(jié)點的數(shù)據(jù)結(jié)構(gòu)為:
structnode{intdata;structnode*next;};
假設(shè)已建立了一條鏈表,鏈表上第一個結(jié)點的值為該鏈表上結(jié)點的個數(shù).下面的函數(shù)要刪除鏈上具有相同值的所有結(jié)點,使得結(jié)點上的數(shù)值各不相同.structnode*delsamenode(structnode*head){structnode*p,*q,*r;p=head->next;if(p!=NULL){while(p->next!=NULL){q=p;while((1)){if((2)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 29292-2024鞋類鞋類和鞋類部件中重點化學物質(zhì)管控指南
- Pemigatinib-d6-INCB054828-d-sub-6-sub-生命科學試劑-MCE-9553
- L-Pyroglutamic-acid-7-amido-4-methylcoumarin-生命科學試劑-MCE-3725
- Boc-Ala-Me-H117-生命科學試劑-MCE-9672
- 4-Fluoro-α-pyrrolidinopropiophenone-hydrochloride-生命科學試劑-MCE-5894
- 二零二五年度租賃期滿續(xù)租養(yǎng)老機構(gòu)居住協(xié)議合同
- 2025年度商鋪租賃協(xié)議終止及租賃場地使用權(quán)回購協(xié)議
- 二零二五年度茶餐廳股份合作經(jīng)營協(xié)議
- 2025年度智慧能源管理系統(tǒng)股東合作協(xié)議書
- 二零二五年度校園食堂檔口租賃合同與食品安全管理協(xié)議
- 時政述評培訓課件
- 2022屆高三體育特長生家長會
- 不對外供貨協(xié)議
- 2024屆高考作文主題訓練:時評類(含解析)
- 260噸汽車吊地基承載力驗算
- 公司新員工三級安全教育培訓(車間級)
- 北師大版高三數(shù)學選修4-6初等數(shù)論初步全冊課件【完整版】
- 老子道德經(jīng)全文講解學習課件
- 企業(yè)更名通知函
- 經(jīng)大量臨床實驗證明,空氣負離子能有效治療心腦血管疾病
- GB/T 12618-1990開口型扁圓頭抽芯鉚釘
評論
0/150
提交評論