本题要求实现一个函数,返回带头结点的单链表中负整数的个数。
函数接口定义:
int NegativeInt(LinkList L);
L是带头结点的单链表的头指针,函数NegativeInt返回L中负整数的个数。如果单链表为空,返回0。
其中LinkList结构定义如下:
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
裁判测试程序样例:
#include <stdio.h>
#include <stdlib.h>typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode, *LinkList;LinkList Create();/* 细节在此不表 */
int NegativeInt(LinkList L);
int main()
{
LinkList L, p;
L = Create();
printf("The number of negative integers is %d.\n", NegativeInt(L));
return 0;
}
/* 你的代码将被嵌在这里 */
输入格式:
输入数据为1行,给出以-1结束的单链表元素(-1不属于单链表元素),所有数据之间用空格分隔。
输入样例:
6 -3 4 -5 3 -1
输出样例:
The number of negative integers is 2.
int NegativeInt(LinkList L);
int NegativeInt(LinkList L)
{
LinkList p=L->next;
int count=0;
while(p!=NULL)
{
if(p->data<0)
{
count++;
}
p=p->next;
}
return count;
}