C程序设计上机实验13.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C程序设计上机实验13

浙江理工大学信息学院 C程序设计实验报告 实验名称:指针进阶 学时安排:两个学时 实验类别:上机操作型 实验要求:1人1组  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 一、实验目的 理解指针数组及指向指针的指针(二级指针)的概念; 掌握指针数组的基本应用和编程方法; 理解指针与函数间的关系,掌握指针作为函数返回值的编程方法; 掌握单向链表的概念和建立方法,并掌握单向链表的基本操作,链表的遍历、插入节点、删除节点。 二、实验设备介绍 软件需求: Visual C++ 6.0或CFree3.5以上版本 硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。 三、实验内容 1. 书P236习题2,输入输出示例如下: tuesday 3 2. 书P237习题3,要求自定义函数为char *mystrcat(char *s, char *t),即用字符指针实现。输入输出示例如下: abc def abcdef 3. 改正程序error11_1.cpp中的错误。输入若干有关颜色的英文单词(单词数小于20,每个单词不超过10个字母),每行一个,以#号作为输入结束的标志,对这些单词按长度从小到大排序后输出。本程序的设计思路为:用动态分配的方式处理多个字符串的输入,用指针数组组织这些字符串并排序。输入输出结果如下所示: blue red yellow green # red blue green yellow 要求把正确的代码(按规范缩进)写入报告,并以注释的方式说明错误原因。 注释示例如下: int i; /*循环控制变量不能定义为double类型*/ 四、程序清单 第一题 #includestdio.h #includestring.h int main(void) { char *p[7]={sunday,monday,tuesday,wednesday,thursday,friday,saturday}; int i,n; char str[10]; printf(Enter a string:); i=0; while((str[i]=getchar())!=\n) i++; str[i]=\0; n=0; while((strcmp(p[n],str)!=0)(n=6)) n++; if(n=7) printf(-1\n); else printf(%d\n,n+1); return 0; } 第二题 #includestdio.h #includestring.h int main(void) { char s[20],t[20]; char *mystrcat(char *s, char *t); printf(输入字符串s:); scanf(%s,s); printf(输入字符串t:); scanf(%s,t); mystrcat(s,t); printf(%s\n,s); return 0; } #includestdio.h #includestdlib.h #includestring.h int main(void) { int i,j, n = 0; char *color[20], str[10], *temp; /*将temp定义为一个指针*/ printf(请输入颜色名称,每行一个,#结束输入:\n); /*动态输入*/ scanf(%s, str); while(str[0] != #) { color[n] = (char*)malloc(sizeof(char)*(strlen(str)+1)); /*将void *强制转化为char **/ strcpy(color[n], str); n++; scanf(%s, str); } /*排序*/ for(i = 1; i n; i++) for(j = 0; j n-i; j++) if(strlen(color[j])strlen(color[j+1])){ /*比较字符串长度而非大小*/ temp = color[j];

您可能关注的文档

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档