全国计算机二级C语言上机练习题1:链表查找与顺序号

版权申诉
0 下载量 34 浏览量 更新于2024-08-05 收藏 19KB PDF 举报
本资源是一份全国计算机二级C语言的上机练习题及答案,主要针对的是链表操作中的查找功能。题目涉及到一个名为`fun`的函数,其功能是在带有头结点的单向链表中查找数据域中值为`ch`的结点,并返回该结点在链表中的顺序号。如果找不到这样的结点,函数返回0。 1. **填空题**: - 函数`fun`的实现中,`while`循环的条件是`p!=___1___`,这里应该填写链表的结束标志,即`p->next`,因为链表遍历通常会检查当前节点是否为`NULL`,所以填`p->next`。 - 当找到匹配的结点时,`return___2___`处应返回结点的顺序号,由于循环变量`n`已经记录了遍历过的结点数量,所以在找到匹配时,返回`n`即可,填`n`。 - 在`main`函数中,调用`fun`函数前需要传入链表头指针`head`和字符`ch`,因此`k=fun(___3___)`中的`___3___`应填写`head`,表示传入链表头指针,填`head`。 2. **`creatlist`函数**:此函数用于创建一个包含预定义字符数组`a`中元素的链表。首先分配一个头结点`h`,然后通过循环`for(i=0; i<N; i++)`,为每个字符创建新的`SLIST`结构体,将字符赋值给`data`,并将其添加到链表中。最后,将最后一个节点的`next`指针设为`0`,表示链表结束。 3. **整体逻辑**:`main`函数首先创建链表,输出链表内容,然后提示用户输入一个字符,根据用户输入调用`fun`函数进行查找。如果查找到匹配的结点,输出顺序号;否则,提示“Not found!”。 这份练习题考察了C语言编程中的链表基础知识,包括链表的创建、遍历以及查找操作,同时也涉及到了函数的参数传递和控制结构的运用。理解并解答这些问题对于提高C语言编程能力和应对全国计算机二级考试中的链表部分至关重要。