第一范文网 - 专业文章范例文档资料分享平台

数据结构上机实验报告

来源:用户分享 时间:2025/6/15 23:25:54 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

程序设计思路:栈的特点是先进后出,而回文串是一个正读和反读都一样的字符串,所以可以利用栈的特点将串入栈,在出栈,最后将出栈的结果和用户输入的串进行比较即可。 程序流程图: 创建栈分配内存 源程序代码:

#include \#include \#include \typedef struct Stack {

char * top; char * base; int stacksize;

字符串出栈与输入N 比较 输入字符串进栈 开始 Y 是回文 N

不是回文 }STACK;

void InitStack(STACK &s) {

s.top = (char *)malloc(100*sizeof(char)); if(s.top==NULL) {

printf(\动态内存分配失败!\\n\return; }

s.base = s.top; *s.top = 0;

s.stacksize = 100;//分配100个 return; }

void push(STACK &s,char k) {

if((s.top-s.base)>=s.stacksize) {

printf(\栈溢出\return; } else {

*s.top++=k; } }

void pop(STACK &s,char &k) {

if(s.base==s.top) {

printf(\为空栈\return; } else {

k=*--s.top; return; } }

bool check(STACK &s) {

char str[100];

char data[100];

printf(\请输入检测的字符串:\\n\scanf(\

for(int i=0;i

push(s,str[i]); }

for(int j=0;j

pop(s,data[j]); }

for(int n=0;n

if(str[n] != data[n]) {

return false; }else{

continue; } }

return true; }

int main(void) {

Stack s;

InitStack(s); if(check(s)) {

printf(\是回文串\}else{

printf(\不是回文串\}

return 0; }

实验三稀疏矩阵的转置运算

程序设计思路:编写一个完整的程序,实现稀疏矩阵三元组的存贮及其转置矩阵的算法设计。在主函数中程序中调用转置函数、输出原矩阵函数和转置后的矩阵函数。 程序流程图:

源程序代码:

#include #define MAXSIZE 1000 typedef struct {

int row,col; int e;

调用转置函数进行转置 输出转置之后的矩阵 输入行列值以及元素值 创建空的稀疏矩阵

搜索更多关于: 数据结构上机实验报告 的文档
数据结构上机实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c94m1c9k2f6208bj78dpg_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top