解题思路:
题目的思路很简单:
定义两个字符数组。(较短的目标字符和较长的参照字符)
用字符数组接受这两个字符串。
注意:这里我是用gets函数来接收字符数组的,用cin或者scanf接收的话好像遇到空格就会终止。
将一个字符串的字符逐一与另一个字符串比较,如果有相等的情况,则计数变量加1。
输出字符及该字符出现的次数。
注意事项:
一定要注意,题目中要求的短的目标字符数组的字符要求是不超过5位,但是你在定义时一定要设置6及以上,否则答案会错误
长的参照字符大小设置80即可。
参考代码:
#include<iostream> #include<cstring> using namespace std; int main() { char str[80],s[6];//注意这里的目标字符数组s要设置大小到6及以上才行 while(gets(s)&&s[0]!='#') { int j=0; gets(str); while(s[j]!='\0') { int count=0; for(int i=0;i<strlen(str);i++) if(str[i]==s[j]) count++; cout<<s[j]<<' '<<count<<endl; j++; } } return 0; }
0.0分
0 人评分