c语言文学研究助手报告,文学研究助手问题(数据结构C++题目)

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

ygd530

2013.06.08

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:55%    等级:12

已帮助:8857人

先看结果: #include

#include

#include

using namespace std;struct Words

{

char word[32];

list lines;

};void main()

{

list words;

while(1)

{

cout<

Words tempwords;

cin>>tempwords.word;

if('#' == tempwords.word[0])

break;

words.insert(words.end(), tempwords);

}

char filename[128] = {0};

cout<

cin>>filename;

FILE* fp = fopen(filename, "r");

if(!fp)

{

cout<

return;

}

char line[128] = {0};

int curline = 1;

while(1)

{

memset(line, 0, 128);

char* temp = fgets(line, 128+1, fp);

if(!temp)

break;

cout<

int flag = 0;

for(int i=0; i

{

if(' ' == temp[i] || '\n' == line[i])

{

char curword[128] = {0};

memcpy(curword, &line[flag], i-flag);

flag = ++i;

char testchar = curword[strlen(curword)-1];

if(!isalpha(testchar))

{

curword[strlen(curword)-1] = 0;

}

Words tempword;

memcpy(tempword.word, curword, strlen(curword));

for(list::iterator it=words.begin(); it!=words.end(); it++)

{

if(0 == strcmp(it->word, curword))

{

it->lines.insert(it->lines.end(), curline);

break;

}

}

break;

}

}

curline++;

}

cout<

for(list::iterator it=words.begin(); it!=words.end(); it++)

{

cout<word<lines.size()<

if(0 < it->lines.size())

cout<

for(list::iterator iti=it->lines.begin(); iti!= it->lines.end(); iti++)

{

cout<

cout<

}

cout<

}

fclose(fp);

cout<

int last;

cin>>last;

} 谢谢采纳!

04分享举报

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值