作业帮 > 综合 > 作业

请高手用C语言解答下面这个问题,不要用指针

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/14 13:28:54
请高手用C语言解答下面这个问题,不要用指针
/*今天的题目:
小明最近对概率问题很感兴趣.一天,小明和小红一起玩一个概率游戏,首先小明给出一个字母和一个单词,然后由小红计算这个字母在这个单词中出现的概率.
字母不区分大小写.
例如,给定的字母是a,单词是apple,那么概率是0.20000.
输入格式
输入包含多组测试数据.每组数据包含一个字母和一个单词.单词的长度不超过200.
输出
对于每一个输入,输出对应的概率,结果保留5位小数.
样例输入
a apple
c Candy
a banana
样例输出
0.20000
0.20000
0.50000
0.50000
#include<stdio.h>

#include<string.h>

char trans(char a){     //定义函数:将大写改为小写

 if(a>='A'&&a<'Z')

  a+=32;

 return a;

}

void main(){

 char c[20],str[20][200];  //假定数据最多有20组,每个单词最长200个字母

 int i=0,j;

 float sum[20];

 while((c[i]=getchar())!=EOF){   //输入字母

  gets(str[i]);      //输入单词

  sum[i]=0;

  for( j=1;str[i][j]!='\0';j++){

   if(trans(str[i][j])==trans(c[i])){  //用trans函数保证比较值为小写字母

    sum[i]+=1;     //记录重复个数

   } 

  }

  sum[i]/=(float)j-1;     //计算重复率

  i++;        //i可用来记录输入个数

 }

 for(j=0;j<i;j++)

  printf("%.5f\n",sum[j]);

}我不知道你题干里只有3组输入为什么会有四个输出.有问题请追问.满意望采纳!