解题思路:
注意事项:
注意:当遍历到字符串的最后,即'\0'结束符时,需要把最后的单词统计下来
参考代码:
#include <bits/stdc++.h> using namespace std; int main() { char str[100]; string tmp; map<string, int> m; map<string, int>::iterator ite; int i=0, sum=0, cnt=0; gets(str); while(str[i] != '\0') { if(str[i] != ' ') { tmp += str[i]; } else { m[tmp]++; tmp = ""; } if(str[i+1] == '\0') //统计最后一个单词 m[tmp]++; i++; } for(ite=m.begin(); ite!=m.end(); ite++) { sum++; } cout << sum; return 0; }
0.0分
5 人评分
2005年春浙江省计算机等级考试二级C 编程题(3),复杂度最低的方法没有之一!!!!!浏览:819 |
简单的a+b (C语言代码)浏览:647 |
简单的a+b (C语言代码)浏览:340 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:1245 |
【排队买票】 (C语言代码)浏览:900 |
1024题解浏览:809 |
字符串输入输出函数 (C语言代码)浏览:2495 |
C二级辅导-公约公倍 (C语言代码)浏览:483 |
矩阵的对角线之和 (C语言代码)浏览:1356 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:674 |