C語言 輸入一行字元,計算其中的單詞數,並用空格分隔單詞

發布 教育 2024-05-11
9個回答
  1. 匿名使用者2024-01-28

    我測試過的這兩個符合你的問題。

    乙個是陣列,乙個是指標,最好選擇指標。

    #include

    int main()

    int num = 0, word = 0, i = 0;

    char str[40];

    gets(str);

    while(str[i] != '\0')if(str[i] == ' ')

    word = 0;

    elseif(0 == word)

    num++;

    word = 1;

    elseword = 1;

    i++;printf("%d",num);

    return 0;

    #include

    #include

    int main()

    int num = 0, word = 0;

    char *str = null;

    str = (char *)malloc(sizeof(char)*40);

    gets(str);

    while(*str != '\0')

    if(*str == ' ')

    word = 0;

    elseif(0 == word)

    num++;

    word = 1;

    elseword = 1;

    str++;

    printf("%d",num);

    return 0;

  2. 匿名使用者2024-01-27

    老實說,我真的懷疑你改變了程式來得分......

    該程式主要在以下方面存在問題:

    #include

    void main()

    int i,c,num=0,word=0;

    char str[40];

    gets(str);

    for(i=0;(c=str[i])!='\0';我++)源程式進行比較,然後進行分配。

    if(c==' 'C 只能與字元進行比較,而不能與字串進行比較。

    word=0;

    否則,如果(word==0)單詞是狀態,你用那個句子做什麼?

    word=1;

    num++;

    printf("%d",num);

  3. 匿名使用者2024-01-26

    #include

    void main()

    int i,c,num=0,word=0,flag=0;

    char str[40];

    gets(str);

    for(i=0;c=(str[i])!='\0';i++)if(c==' ')

    if(flag==1) 將前幾個空格排除在空格之外。

    word++;

    flag==0;消除兩者之間的連續空格。

    elseflag=1;標誌找到第乙個不是空格的字元,下乙個單詞開始。

    printf("%d",world);

  4. 匿名使用者2024-01-25

    關鍵**:花了兩次時間才完成。

    #include ""

    #include ""

    void main()

    char string[100];

    int i=0,sum=0,flag=0;

    gets(string);

    while(string[i]!='\0')if(flag==1 &&string[i]!=' ')+i;continue;

    if(string[i]==' ')

    flag=0;

    i;else

    flag=1;

    sum+=1;

    i;printf("the word numbers is %d",sum);

  5. 匿名使用者2024-01-24

    單詞文件的字數統計非常詳細,總字數將包括所有標點符號和空格,但它也會顯示標點符號和空格的數量。

  6. 匿名使用者2024-01-23

    1.首先,定義乙個整數變數並儲存找到的字串位置。

    2. 定義兩個字串變數,儲存要查詢的字串,以及它是否包含單詞。

    3. 輸入搜尋到的字串並將其儲存在變數 str 中。

    4. 輸入要查詢的單詞並將其儲存在 Word 中。

    5. 找到單詞在字串中的起始位置,並將其儲存在變數 p 中。

    6. 如果 p 的值為 -1,則輸出字串中沒有可查詢的單詞。

    7.然後,將找到的單詞替換為英文名稱。

    8. 最後,輸出替換的字串。

  7. 匿名使用者2024-01-22

    總結。 輸入一行字元並計算有多少個單詞,單詞之間用空格分隔(當然,這個計數有侷限性)。 【實驗指導】問題解決思路:

    字數可以通過空格的出現次數來確定,連續的空格視為乙個空格,一行開頭的空格不計算在內。 設定乙個變數詞作為標誌,判斷它是否是詞,0表示沒有出現詞,1表示出現詞。 如果檢測到空格,則很明顯沒有出現新單詞,word=0;如果前乙個字元也是非空格字元(通過判斷單詞的值),則表示該字元與前乙個非空格字元是同乙個單詞。 否則,即前乙個字元是乙個空格,然後出現乙個新單詞,並且字數加 1 (num++) 將標誌字設定為 1。

    字元與新單詞的關係。

    C語言程式設計題,題目:輸入一行字元,數一數其中有多少個字,並用空格分隔字; 我的問題:這個單詞值不是以 word=0 開頭嗎? **word = 1 的原始值從何而來?

    輸入一行字元並計算有多少個單詞,單詞之間用空格分隔(當然,這個計數有侷限性)。 解決問題的思路:字數可以通過空格的出現次數來決定,連續的空格視為乙個空格,一行開頭的空格不計算在內。

    設定乙個變數詞作為標誌,判斷它是否是詞,0表示沒有出現詞,1表示出現詞。 如果檢測到空格,則很明顯沒有出現新單詞,word=0;如果前乙個字元也是非空格字元(通過判斷單詞的值),則表示該字元與前乙個非空格字元是同乙個單詞。 否則,即前乙個字元是乙個空格,然後出現乙個新單詞,並且字數加 1 (num++) 將標誌字設定為 1。 字元與新單詞的關係。

    請問我的問題。

    看不清。 輸入一行字元並計算有多少個單詞,用空格分隔。

  8. 匿名使用者2024-01-21

    1. 首先,定義乙個常量來控制字串的長度。

    2. 定義兩個陣列來儲存文章中的字元和最短的單詞。

    3. 使用 do-while 迴圈來控制輸入文章,前提是它不等於句點。

    4.獲取文章中的字元並將它們儲存在陣列藝術中。

    5.使用for迴圈控制獲取文章中最短的單詞,條件小於或等於l。

    6.使用if語句確定是否為空格和句號來獲取單詞。

    7. 獲取最短的單詞並將其儲存在陣列字中。 執行程式,輸入以句號結尾的英文文章,計算機將輸出最短的單詞和單詞長度。

  9. 匿名使用者2024-01-20

    您可以使用迴圈逐個檢查字串,在遇到空格或標點符號時增加字數,但要注意跳過連續的空格和標點符號。

    遍歷字串以確定英文字元。 定義乙個標識變數,例如初始值 0,當遍歷到第乙個英文字元時設定為 1,當標識為 1 時設定為 0,對於非英文字元,並儲存連續的英文字元。 可以通過動態建立 2D 字元或 malloc 的陣列來儲存陣列。

    這將導致所有連續的英語字段。 如果問題被要求是乙個單詞,則無需遍歷它來確定每個英語短語是否是乙個單詞。 這需要現成的詞彙來匹配。

相關回答
12個回答2024-05-11

不。。。 你還沒有弄清楚 C 語言中字串的含義。 >>>More

10個回答2024-05-11

有三種方法可以區分程式的型別**:

1 對於所有 C 語言語句,您可以在需要換行句子的地方新增乙個標記,以達到換行效果。 >>>More

8個回答2024-05-11

d,%d,%d放在中間,需要分開的。 (如果不放或分隔空格,可以在進入時用空格分隔)。 >>>More

19個回答2024-05-11

您確定所有資料都符合您的查詢條件嗎? 如果只有乙個滿足它,則只有乙個出現。