我需要访问一个文件,并且需要从该文件中打印出所有以大写字母开头的单词以及单词出现的次数。例如,在文件中有一个文本“程序应同时显示文件和文件” 现在的输出应该是:
文字
程序
显示
Files(2)//这个单词被写了两次
答案 0 :(得分:1)
while (!feof(..))
通常不是一个好主意,而是写
while (fgets(readLine,sizeof(readLine), fpointer) != NULL)
{
}
在这种情况下,ptr似乎是多余的,如果您想检查一行中的单词,应该将其向前移动吗?
alt。改用运行时函数strtok:
for (ptr = strtok(readLine, " "); ptr != NULL; ptr = strtok(NULL, " ")
{
// now ptr will point to each word in the line, then you just check
// if the first character is upper case.
}
答案 1 :(得分:1)
这听起来像是一项家庭作业,所以我不会在这里放置代码。我可以为您提供一个大致了解的步骤:
{word1: 1, word2: 2}