Untitled Document

五、（6分）完成顺序查找函数f_seq( )。其过程是：从表头开始，根据给定的模式，逐项与表中元素比较。如果找到所需元素，则查找成功，并打印出它在表中的顺序号。如果查找整个表仍未找到所需对象，则查找失败
#include <stdio.h>
void f_seq(char *list[],char *object,int len)
//list 指针数组，指向字符串
//object 模式串
//len 表的长度
{
char **p;
int strcmp(char *s,char *t);

p=list;
while (_____①______) //p<list+len
if (strcmp(*p,object)==0)
break;
else ______②_______; //p++
if (p<list+len)
printf( "Success! **% d\n",p-list);
else printf("Unsuccess!\n");
}
int strcmp(char *s,char *t)
{
for (;*s==*t; s++,t++)
if (*s=='\0')
return(0);
return(_____③______); //s-t或*s-*t或1
}

六、（8分）完成使链表逆置函数reverse，若有链表：
逆置后则变为：
链表结点的结构如下：
struct node
{
int num;
struct node *next;
}
struct node* reverse(struct node *head)
//head 链表头结点
{
struct node *p,*temp1,*temp2;
if(head==NULL____①____) return head; //||head->next==NULL
p=head->next;head->next=NULL;
while(____②____) //p!=NULL或p
{
temp1=head;
____③____; //head=p;
temp2=p;
p=p->next;
____④____; //temp2->next=temp1;或head->next=temp1;
}//Match while statenment
return head; //返回逆置后的链表的头结点
}