A-A+
函数count(head)统计链表的结点个数 head为表头指针 阅读程序 要求将整个if语
问题详情
函数count(head)统计链表的结点个数,head为表头指针,阅读程序,要求将整个if语句改成while循环控制结构,其形式为【 】。 include<stdio.h> int count(NODE*head) { int n=0; if(head!=NULL) do { n++; head=head->next; } while(head!=NULL); return n;}
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:while(p!=NULL){n++;head=head→ next;}
do…while循环转化为while循环,循环体执行的内容应该是一致的,不同的是do…while结构是先执行一次循环体,然后再判断循环条件是否满足,而while循环则是先判断循环条件是否满足,满足则执行循环体。所以do…while循环结构若想转换为while循环结构,必须在do…while循环之前先对循环条件进行一个判断,即此题中的if(head!=NULL)。注意:3种循环结构的比较。