# include & ltstring.h & gt
//int字母、數字、空格、其他;//這是什麽?
void count(char str[]);
int main()
{
char string[20];
獲取(字符串);
計數(字符串);
返回0;
}
無效計數(字符串[])
{
int len = strlen(str);
If(len==0) //如果沒有輸入字符輸出提示,函數返回。
{
printf("請輸入壹個對話框!\ n ");
返回;
}
int k = 0;
int a[20];
for(int I = 0;我& ltlenI++) // Loop:找出str中哪個字符是空格。
{
if(str[i]== ' ')
{
a[k]= I;
k++;
}
}
a[k]= strlen(str);//將字符串最後壹個字符後壹個字符的位置作為數組a的結尾。
int點;
int max
If(k==0) //不加空格直接輸出字符串。
{
max = len
點= 0;
}
其他
{
max = a[0];//第壹個字的長度賦給max。
點= 0;//將第壹個單詞的起始位置賦給點。
for(int j = 1;j & ltk+1;J++) //循環查找最長的單詞。
{
if(max & lt;(a[j]-a[j-1]-1))
{
max = a[j]-a[j-1]-1;
point = a[j-1]+1;
}
}
}
printf("最大的字是:");//輸出最長的單詞
for(I = 0;我& ltmaxi++)
{
printf("%c ",str[point]);
點++;
}
printf(" \ n ");
}
/*程序已修改,通過編譯可以輸出壹段英文對話中最長的單詞。我完全按照妳的想法寫的,但是我想說妳的想法不太好。我用了20多分鐘,vc6.0編譯沒有錯誤和警告!看妳把函數的語句寫在主函數裏,應該沒學多久。新手有自己的想法就好,再復雜也沒關系。不過說實話,這個程序有點復雜。妳要多註意基本,完全出於好心提醒。因為新手學習要走很多彎路,所以可以忽略以上建議!嗯。多有趣啊
我之前也寫過壹個程序,就是把所有空格都換成' \0 ',動態申請內存存儲每壹個字,模擬命令行獲取參數的方式。
希望能幫到妳,加油!*/