问题 : 一个字符串中的字符在另一个字符串中出现的次数。
- (简单题)题目描述:
-
统计一个给定字符串中指定的字符出现的次数。
- 输入:
-
测试输入包含若干测试用例,每个测试用例包含2行,第1行为一个长度不超过5的字符串,第2行为一个长度不超过80的字符串。注意这里的字符串包含空格,即空格也可能是要求被统计的字符之一。
- 输出:
-
对每个测试用例,统计第1行中字符串的每个字符在第2行字符串中出现的次数,按如下格式输出:
c0 n0
c1 n1
c2 n2
...
其中ci是第1行中第i个字符,ni是ci出现的次数。
- 样例输入:
-
I THIS IS A TEST i ng this is a long test string #
- 样例输出:
-
I 2 i 3 5 n 2 g 2
代码:
#include <stdio.h> #include <string.h> int main() { char ch1[5],ch2[80]; int i,j; int n=5;//这个n可以自己定义,可以自己输入scanf("%d",&n); while(n--){ int count[10]={0}; // scanf("%s",ch1);用scanf函数输入的字符串不包含空格,想用scanf要加上%[^\n],这里用gets(); gets(ch1); gets(ch2); // printf("%s",ch2); int a=strlen(ch1); int b=strlen(ch2); for(i=0;i<a;i++) { for(j=0;j<b;j++) { if(ch2[j]==ch1[i]) count[i]++; } } for(i=0;i<a;i++){ printf("%c %d\n",ch1[i],count[i]); } } return 0; }