功能:按你要求写的,输入句子存入链表,统计字母个数。
#include<stdio.h>
#include<malloc.h>
typedef struct word
{
char c;
struct word *next;
}WD;
int newWD(WD *wdHead,WD *wdTail)//输入字符存入链表 返回输入个数 参数:链表头指针 尾指针
{
static int count;
char c;
scanf("%c",&c);
if(c=='\n')
return 0;
WD *wdNew=(WD *)malloc(sizeof(WD));
wdNew->c=c;
wdNew->next=NULL;
if(wdHead->next==NULL)
{
count=0;
wdHead->next=wdTail=wdNew;
}
else
{
wdTail->next=wdNew;
wdTail=wdNew;
}
if((c>='A' && c<='Z')||(c>='a' && c<='z'))
count++;
newWD(wdHead,wdTail);
return count;
}
int main()
{
int count;
WD *wdHead=(WD *)malloc(sizeof(WD));
wdHead->next=NULL;
WD *wdTail=NULL;
count=newWD(wdHead,wdTail);
printf("输入的句子为:\n");
while(wdHead->next!=NULL)
{
printf("%c",wdHead->next->c);
wdHead=wdHead->next;
}
printf("\n");
printf("输入的字母个数为:%d个\n",count);
return 0;
}