成语大全网 - 汉语词典 - c语言词典数组

c语言词典数组

声明一个较大的char型数组,待输入完成后依次检查数组元素,除第一个单词可能需要个别处理外,其余以空格后跟字母或其它字符后跟字母的就认为是一个单词,累加计数即可。代码如下:

int?main(int?argc,char?*argv[]){

char?text[300];//定义一个空间较大的char数组存放输入的text

int?i,w;

printf("Input?a?text...\n");

fgets(text,300,stdin);//用fgets既可接收空格又能限制长度

w=text[0]>='a'?&&?text[0]<='z'?||?text[0]>='A'?&&?text[0]<='Z';//开头是字母则w置1

for(i=1;text[i];i++)

if((text[i]>='a'?&&?text[i]<='z'?||?text[i]>='A'?&&?text[i]<='Z')

&&?!(text[i-1]>='a'?&&?text[i-1]<='z'?||?text[i-1]>='A'?&&?text[i-1]<='Z'))

w++;//非字母后跟着字母则为一个单词

printf("A?total?of?%d?word(s).\n",w);

return?0;

}

运行样例如下图: