1. 程式人生 > 實用技巧 >英語單詞計數器

英語單詞計數器


#include <iostream>

using namespace std;

int count_word(char *p)
{
    int a[10][10] = {0};
    int i = 0,j = 0,s;
    int m,n = 0,flag = 0;//flag記錄單詞數。
    while(*p!=NULL)
    {
        a[i][j] = *p;
        cout<<a[i][j]<<i<<'\t'<<j<<'\t';//檢測下i,j的值是否輸入到二維數組裡面。
        j += 1;
        if(*p == (' '))
        {
            i += 1;
            j = 0;
        }
        p += 1;
    }
    j = 0;
    for(m=0;m<i+1;m++,flag++)
    {
        if(a[m][j] == 0||a[m][j] == 32)
        {
            flag -= 1;
            continue;
        }
        while(a[m][j]!=0)//不是單詞就跳出迴圈,
        {
            if(a[m][j]>=65&&a[m][j]<=122);
            else if(a[m][j] == 0||a[m][j] == 32)
                {
                    break;
                }
            else
            {
                flag -=1;
                break;
            }
            j += 1;
        }
        j = 0;//每迴圈一次就把j的值賦為0.
    }
    return flag;
}
int main()
{
    char buf[100] = {0};
    int word_number = 0;
    cout<<"please input string:"<<endl;
    gets(buf);
    word_number = count_word(buf);
    cout<<"word_number="<<word_number<<endl;
    return 0;
}