本题要求实现一个函数,返回带头结点的单链表中数字字符的个数。
函数接口定义:
int CharacterCount(LinkList L);
L是带头结点的单链表的头指针,函数CharacterCount返回L中数字字符的个数。如果单链表为空,返回0。
其中LinkList结构定义如下:
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
裁判测试程序样例:
#include <stdio.h>
#include <stdlib.h>
typedef char ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode, *LinkList;
LinkList Create();/* 细节在此不表 */
int CharacterCount(LinkList L);
int main()
{
LinkList L, p;
ElemType e;
L = Create();
printf("The number of numeric characters is %d.\n", CharacterCount(L));
return 0;
}
/* 你的代码将被嵌在这里 */
输入格式:
输入数据为1行,给出以#结束的单链表元素(#不属于单链表元素)。
输入样例:
Abc0D3E15x#
输出样例:
The number of numeric characters is 4.
供参考:
int CharacterCount(LinkList L)
{
int cnt = 0;
if (L == NULL || L->next == NULL) return 0;
LinkList p = L->next;
while (p){
if (p->data >= '0' && p->data <='9') cnt++;
p = p->next;
}
return cnt;
}