请用c语言实现要求:描述 输入一串数字,字符长度<5000,输入数字c; 分析这个数字在字符串中所占比例。输出保留两位小数。 Sample Input 1234567890123456 1 2 R end Sample Output 12.50% 12.50% 输入 输入两行 第一行输入1234567890123456, 最多5000位,以字符串end为结束 第二行输入1个一位数字,以字符"R"为本组测试结束 输出 这个字符在数字串中所占的比例
时间: 2024-02-24 12:59:46 浏览: 130
以下是用C语言实现的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[5001]; // 输入的数字串
char c; // 要统计的字符
int count = 0; // 统计字符出现次数
int len; // 数字串长度
int i;
// 输入数字串
scanf("%s", str);
len = strlen(str);
// 输入要统计的字符
scanf(" %c", &c);
// 统计字符出现次数
for (i = 0; i < len; i++) {
if (str[i] == c) {
count++;
}
}
// 输出结果
printf("%.2f%%", (double)count / len * 100);
return 0;
}
```
输入样例:
```
1234567890123456end
1 R
```
输出样例:
```
12.50%
```
解释:数字串中数字 1 的出现次数为 2,数字串长度为 16,所以数字 1 在数字串中所占比例为 2 / 16 = 0.125 = 12.50%。
阅读全文