KWIC实验报告Word下载.docx

上传人:b****3 文档编号:16580377 上传时间:2022-11-24 格式:DOCX 页数:9 大小:23.32KB
下载 相关 举报
KWIC实验报告Word下载.docx_第1页
第1页 / 共9页
KWIC实验报告Word下载.docx_第2页
第2页 / 共9页
KWIC实验报告Word下载.docx_第3页
第3页 / 共9页
KWIC实验报告Word下载.docx_第4页
第4页 / 共9页
KWIC实验报告Word下载.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

KWIC实验报告Word下载.docx

《KWIC实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《KWIC实验报告Word下载.docx(9页珍藏版)》请在冰豆网上搜索。

KWIC实验报告Word下载.docx

ize();

j++)

{

cout<

<

dst[i][j]<

"

"

;

}

cout<

endl;

}

cout<

endl<

returndst;

}

ize();

col++)

(srcLines[row][col][0]);

(firstCharLine);

charmin='

z'

for(introw=0;

row<

();

row++)

{

for(intcol=0;

col<

firstChar[row].size();

{

if(min>

=firstChar[row][col]&

&

'

'

!

=firstChar[row][col])

{

rowPos=row;

colPos=col;

min=firstChar[row][col];

}

}

}

firstChar[rowPos][colPos]='

intlinePos=0;

linePos=linePos+colPos;

(lineIndex[linePos]);

returndstIndex;

srcLines[lineIndex[row].rowIndex][lineIndex[row].colIndex[col]]<

(3)抽象数据类型结构实现

行存储类

ush_back(instring);

ush_back(inchar);

输入类

voidInput:

:

readLines(char*filename,Lines&

readLines)

//vector<

vector<

string>

>

dst;

ifstreaminfile(filename,ios:

in);

if(!

infile)

{

openerror!

exit(0);

chartemp[100]="

//存储从文件中读取的行的临时变量

intlineIndex=0;

//行序号

//按行读取

while(temp,100))

intk=0,j=0;

vector<

line;

(vector<

());

(line);

chars[20]="

//存储从行中取字符串的临时变量

intstringIndex=0;

//字符串序号

(s,lineIndex);

while(temp[k]!

=0)

if(temp[k]!

='

(temp[k],stringIndex,lineIndex);

//每个单词的截取条件为下一个字符为空格或者为行的末尾

if(temp[k]=='

temp[k+1]!

//(temp[k],stringIndex,lineIndex);

//将该字符串加入到指定行的指定字符串中

//('

\0'

stringIndex,lineIndex);

s[0]='

//清空字符串

(s,lineIndex);

stringIndex++;

//字符串序号加1

k++;

lineIndex++;

//(line);

//将从文件中中读出的行加入到dst中

();

for(inti=0;

i<

i++)

for(intj=0;

j<

(i);

(i,j)<

循环左移类

//实现所有行的循环移位

voidShift:

circularShift(LinessrcLines)

for(introw=0;

intcols=(row);

for(intcol=0;

cols;

vector<

newLine;

(newLine);

for(intnewcol=0;

newcol<

newcol++)

(row,(col+newcol)%cols),lineIndex);

lineIndex++;

//获取所有行

LinesShift:

getLines(void)

returnlineShift;

//获取某一行

Shift:

getLine(intlineIndex)

return(lineIndex);

//获取某一行中某一位置的字符串

stringShift:

getString(intlineIndex,intstringIndex)

return(lineIndex,stringIndex);

//获取某一行中某一个字符串中的某一位置的字符

charShift:

getChar(intlineIndex,intstringIndex,intcharIndex)

return(lineIndex,stringIndex,charIndex);

//获取行数

intShift:

getLineNum(void)

return();

//获取某一行的字符串个数

getStringNum(intlineIndex)

排序类

//实现按首字母排序

voidFirstAlphaSort:

alphaSort(ShiftsrcShiftLines)

shiftLines=srcShiftLines;

//将传进得Shift对象赋值给成员变量

vector<

char>

firstChar;

(row,0,0));

//获取首字母

//首字母排序

for(intloop=0;

loop<

loop++)

charmin='

introwIndex=0;

for(introw=0;

if(min>

=firstChar[row]&

=firstChar[row])

min=firstChar[row];

rowIndex=row;

(rowIndex);

firstChar[rowIndex]='

//将找到的最小的字母置为‘’,以便在下一次查找时不再保留

//首字母排序

int>

FirstAlphaSort:

getCharSort()

returncharSort;

intFirstAlphaSort:

//按行的序号,将各字符串合并成一个字符串,然后获取一行

//lineIndex为行序号

stringFirstAlphaSort:

getLineAsString(intlineIndex)

stringlineString;

for(intstrCount=0;

strCount<

(lineIndex);

strCount++)

lineString+=(lineIndex,strCount)+"

lineString+="

\0"

returnlineString;

输出类

//按字母表顺序输出

voidOutput:

print(FirstAlphaSortsortLines)

()[row])<

4、实验的例程

(1)主程序、子程序运行结果

(2)抽象收据类型

5、总结

通过本次实验,首先对软件体系结构有了更真切的了解,尤其是对管道过滤器结构,主程序、子程序结构,抽象数据类型结构,隐式调用这四种结构的理解更加透彻了。

同时还对KWIC有个一个认知的过程。

在实现的上述两种结构的过程中,对增强了数据结构的掌握,以及对面向对象概念的进一步理解。

编程时,遇到了各种大大小小的问题,尤其是数据结构定义方面的,深刻体会到了数据结构的重要性,同时发现了自己编写的代码移植性以及编码风格都不是很好,希望老师给予指点。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职高对口

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1