欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年采用十字链表表示稀疏矩阵,并实现矩阵的加法运算 .pdf

    • 资源ID:33672394       资源大小:37.83KB        全文页数:5页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年采用十字链表表示稀疏矩阵,并实现矩阵的加法运算 .pdf

    课程设计所抽题目:采用十字链表表示稀疏矩阵, 并实现矩阵的加法运算。要求:要检查有关运算的条件,并对错误的条件产生报警。问题分析和建立模型:本题目主要是运用所学知识,用十字链表的方法去表示稀疏矩阵,并使之可以在两矩阵间进行相加。而后,若有错误,则对错误进行警报。框架搭建:1选择 File|New 菜单项,弹出New 对话框,选择Files 标签,选中C+ Source File项,在 File 编辑器中输入项目名称 “十字链表表示稀疏矩阵实现加法”,在 Location 编辑框中输入项目所在目录, 按下 OK按钮即可。2在操作界面中输入,程序代码。(1)结构体和共用体的定义#include #include #define smax 45 typedef int datatype; typedef struct lnode (2)建立稀疏矩阵的函数,返回十字链表头指针int i,j; struct lnode *cptr,*rptr; union 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - struct lnode *next; datatype v; uval; link; int flag=0; 建立十字链表头结点head=(link *)malloc(sizeof(link); 建立头结点循环链表for(i=1;ii=0;p-j=0; p-rptr=p;p-cptr=p; cpi=p; cpi-1-uval.next=p; cps-uval.next=head; for(k=1;ki=i;p-j=j;p-uval.v=v; q=cpi; while(q-rptr!=cpi)&(q-rptr-jrptr; p-rptr=q-rptr; q-rptr=p; q=cpj; while(q-cptr!=cpj)&(q-cptr-icptr; p-cptr=q-cptr; q-cptr=p; return head; (4)输出十字链表的函数link *p,*q; p=(link *)malloc(sizeof(link); p-i=i;p-j=j;p-uval.v=v; q=cpi; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - while(q-rptr!=cpi)&(q-rptr-jrptr; p-rptr=q-rptr; q-rptr=p; q=cpj; while(q-cptr!=cpj)&(q-cptr-icptr ; p-cptr=q-cptr; q-cptr=p; (5)定义两个矩阵的非零元素,及两个矩阵的行和列数。然后输入非零元素。将两个用十字链表表示的稀疏矩阵显示出来。void print(link *a) link *p,*q,*r; int k,col,t,row; col=a-j; printf( 矩阵为: n); p=a-uval.next; while(p!=a) q=p-rptr; if(q=a-cptr)break; r=p; while(q!=p) for(k=1;kj-(r-j);k+) printf( 0); printf(%3d,q-uval.v); q=q-rptr; r=r-rptr; k=r-j; for(t=k;tuval.next; link *add(link *a,link *b) link *p,*q,*u,*v ,*r,*cpsmax,*c; int s,i; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - if(a-i!=b-i|a-j!=b-j) flag=1;return NULL; (5)建立相加矩阵 c 的表头环链c=(link *)malloc(sizeof(link); c-i=a-i;c-j=a-j; if(c-ic-j)s=c-i; else s=c-j; cp0=c; for(i=1;ii=0;r-j=0; r-rptr=r;r-cptr=r; cpi=r; cpi-1-uval.next=r; cps-uval.next =c; 考虑复杂问题,实现矩阵相加。p=a-uval.next;u=b-uval.next; while(p!=a&u!=b) q=p-rptr;v=u-rptr; if(q=p&v!=u) while(v!=u) insert(v-i,v-j,v-uval.v ,cp);v=v-rptr; else if(v=u&q!=p) while(q!=p) insert(q-i,q-j,q-uval.v ,cp);q=q-rptr; else if(q!=p&v!=u) while(q!=p&v!=u) if(q-jj) insert(q-i,q-j,q-uval.v ,cp);q=q-rptr; else if(q-jv-j) insert(v-i,v-j,v-uval.v ,cp);v=v-rptr; else if(q-uval.v+v-uval.v!=0)insert(q-i,q-j,(q-uval.v+v-uval.v),cp); q=q-rptr;v=v-rptr; if(q=p&v!=u) while(v!=u) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - insert(v-i,v-j,v-uval.v ,cp);v=v-rptr; else if(v=u&q!=p) while(q!=p) insert(q-i,q-j,q-uval.v ,cp);q=q-rptr; else; else ; p=p-uval.next;u=u-uval.next; return c; (6)编写主函数void main() link *a,*b,*c; a=creatlinkmat();print(a); b=creatlinkmat();print(b); c=add(a,b); if(flag=1)printf( 矩阵 a、b 不能相加 !); else printf(和矩阵 c 为: n);print(c); 实验总结:应掌握稀疏矩阵的各种表示方法。学会实现两个稀疏矩阵的加法运算。对十字链表法应熟练掌握。考虑矩阵相加时,情况要考虑全面。在输入出错时, 要及时提示提醒操作者,该行为不能再继续运行该程序。07 级 信 息 与 计 算 科 学2班张雨辰20074694 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -

    注意事项

    本文(2022年采用十字链表表示稀疏矩阵,并实现矩阵的加法运算 .pdf)为本站会员(H****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开