《C语言程序设计实验》报告彩版.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE III NEXT PAGE III 课 程 实 验 报 告 课程名称: C语言程序设计实验 专业班级: 学 号: 姓 名: 指导教师: 报告日期: 计算机科学与技术学院 目 录 TOC \o 1-3 \h \z \u TOC \o 1-3 \h \z \u 1 实验6指针 1.1拷贝字符串 3 1.2 strsort用于对字符串进行升序排序 3 1.3二级指针形参重写strsort函数 4 1.4函数指针和菜单选择来调用库函数实现字符串操作 5 1.5转移表调用库函数实现字符串操作 6 1.6通过指针取出字节 7 1.8 旋转图像 9 1.9命令行实现对N个整数排序 11 1.10删除子串 12 1.11非负整数积 13 1.12函数调度 16 2实验7 结构与联合实验 2.1表达式求值的程序验证 19 2.2创建一个先进先出的链表 20 2. 3 创建一个先进后出的链表 21 2.4设计字段结构 23 2.5 班级成绩单 25 2.6 班级成绩单数据域交换 29 2.7回文字符串 33 2.8成绩单排序指针域交换 35 2.9 逆波兰序数 40 2.10 小结 43 参考文献 43 实验6 指针 1.1拷贝字符串 此程序是将一个字符串拷贝给另一个字符串,其中strcopy函数功能是将形参s所指字符串拷贝到形参t,但是不改变形参s的内容,返回值是t的指针,所以用字符指针m接受t,然后将s指针的字符串拷贝到m中,当s指为’\0’ 时结束循环,然后返回m指针,main函数中s1,s2用数组接收字符串,而不能定义为指针,因为用指针接收字符串后不能修改,故应该用数组接收,输入s2后将其拷贝给s1,输出s1,然后输入s2,将其拷贝给s1,用s3接收返回的指针,输出s3时就输出了拷贝后的内容。 #includestdio.h char?*strcopy(char?*t,const?char?*s); int?main() { ????char?s1[20],s2[20],*s3;//定义两个可以修改的字符数组和一个不可以修改的字符数组 ????scanf(%s,s2); ????strcopy(s1,s2);//将s2拷贝给s1 ????printf(%s\n,s1); ????scanf(%s,s2); ????s3=strcopy(s1,s2);//将s2拷贝给s1并将返回的地址传给s3 ????printf(%s\n,s3); ????return?0; } char?*strcopy(char?*t,const?char?*s) { ????char?*m=t;//保存t的初始地址 ????while(*(t++)=*(s++));//拷贝字符串中内容 ????return?(m); } 1.2strsort用于对字符串进行升序排序 Strsort函数形参为一个数组的指针,和表示数组长度的整形常量size,无返回值,通过冒泡排序,实现将字符串升序排列 此程序目标是将字符串进行升序排列,所以应该用一个二维数组接收字符串,*s[N]就是一个二维数组所以先用数组t接收字符串,然后对s动态分配内存,接着将t拷贝给s,这样就构建了一个二维数组,然后调用strsort函数进行排序,这里我选择了冒泡排序,用strcmp函数比较字符串,然后进行交换。交换后二维数组的字符串就得到了修改,然后遍历输出二维数组,程序完成。 #includestdio.h #includestring.h #includestdlib.h void?strsort(char?*s[],int?size) { ????char?*temp; ????int?i,j; ????for(i=0;isize-1;i++)//冒泡排序 ????????for(int?j=0;jsize-i-1;j++){ ????????????if(strcmp(s[j],s[j+1])0){//比较字符串 ????????????????temp=s[j];//交换 ????????????????s[j]=s[j+1]; ????????????????s[j+1]=temp; ????????????} ????????} }? int?main() { ????int?i,N; ????scanf(%d,N); ????char?*s[N],t[50]; ????for(i=0;iN;i++){ ????????

文档评论(0)

t_github + 关注
实名认证
文档贡献者

计算机研究者

1亿VIP精品文档

相关文档