填空题
以下程序中函数 fun 的功能是:构成一个如图所示的带头结点的单向链表,在结点 的数据域中放入了具有两个字符的字符串。函数 disp 的功能是显示输出该单向链表 中所有结点中的字符串。请填空完成函数 disp。 head ab cd ef /0 #include
typedef struct node /*链表结点结构*/ { char sub[3]; struct node *next; }Node; Node fun(char s) /* 建立链表*/ { …… } void disp(Node *h) { Node *p; p=h->next; while(= ---|||________|||--- ) { printf("%s/n",p->sub);p= ---|||________|||--- ; } } main() { Node *hd; hd=fun(); disp(hd);printf("/n"); }
【正确答案】
p!=NULL 或 p 或 p!=0 或 p!='/0' , p->next 或 (*p).next
【答案解析】
此题主要考核的是用指针处理链表。自定义结构体类型名为 Node,并定义一个指向结点类型的指针 next。用 Node 来定义头结点指针变量 h,并定义另一个指针变量 p 指向了第一个结点,在满足 p 未指向最 后一个结点的空指针时,输出 p 所指向结点的字符串,所以第一个空填 p!=NULL 或 p 或 p!=0 或 p!='/0', 然后将 p 指向下一个非空结点,所以第二个空填 p->next 或与其等效的形式,反复执行直到所有的结点都输 出,即遇到 p 的值为 NULL。
提交答案
关闭