cd24240 2021-12-31 18:21 采纳率: 71.4%
浏览 89
已结题

c语言oj题统计单词数

以下代码在oj平台上显示答案错误27%,
求各位指点。





#include<stdio.h>
#include<string.h>
char ch[10000001];
    char ch1[11];
int main()
{
    
    
    while(gets(ch1)!=NULL){
    int sum=0,sum1=0,flag=0;
    gets(ch);
 
    for(int i=0;ch[i]!='\0';i++)
    if(ch[i]>=97&&ch[i]<=122)
    ch[i]-=32;
for(int i=0;ch1[i]!='\0';i++)
    if(ch1[i]>=97&&ch1[i]<=122)
    ch1[i]-=32;
    char* p;
    p=strtok(ch," ");
 
    while(p)
    {    
        if(strcmp(p,ch1)==0)
        {
        sum++;
        flag=1;}
        if(flag==0)sum1+=strlen(p)+1;
        p=strtok(NULL," ");
    }
    if(sum!=0)printf("%d %d\n",sum,sum1);
    else printf("-1\n");}
    return 0;
    
}

img

img

  • 写回答

3条回答 默认 最新

  • qzjhjxj 2022-01-01 21:45
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月2日
  • 已采纳回答 1月2日
  • 创建了问题 12月31日