课 程 实 验 报 告

课程名称:面向对象程序设计

实验名称:面向对象的整型栈编程

院系 : 计算机科学与技术

专业班级:CS1209班

学号 :

姓名 :

指导教师:李春花

2014年1月22日

一、需求分析

题目要求

整型栈是一种先进后出的存储结构,对其进行的操作通常包括判断栈是否为空、向栈顶

添加一个整型元素、出栈等。整型栈类型及其操作函数采用非面向对象的纯C 语言定义,请

将完成上述操作的所有函数采用纯C 语言编程,然后写一个 main 函数对栈的所有操作函数

进行测试。

struct STACK{

int*elems;

始化 p 指向

的栈:最多m 个元素 ");

printf("\t\t 2.用栈 s 初始化 p 指向的栈 \n");

printf("\t 3. 返回 p 指向的栈的实际元素个数pos");

printf("\t 4. 将 e 入栈,并返回p\n");

printf("\t 5. 出栈到 e,并返回p");

printf("\t\t\t 6.赋 s 给 p 指的栈 ,并返回 p\n");

printf("\t 7. 打印 p 指向的栈 ");

printf("\t\t\t 8.销毁 p 指向的栈 \n");

printf("\t\t\t\t 0.退出程序 \n");

printf("\t****************************************************************\n");

}

typedef struct STACK{

int *elems;// 申请内存用于存放集合的元素

int max;// 集合能存放的最大元素个数

int pos;// 集合实际已有元素个数,集合空时pos=0;

} STACK;

void initSTACK(STACK *const p, int m)

{

p->max=m;

sit=m;

p->elems=(int*)malloc(m*sizeof(int));

p->pos=0;

}

void initSTACK(STACK* pset, const STACK&s)

{

initSTACK(pset,;

int i;

if==NULL)

printf("s 栈为空,请初始化

else

for(i=0;i

{

s!! \n");

pset->elems[i]=[i];

pset->pos++;

}

}

inthowMany (const STACK *const p)

{

return (p->pos);

}

STACK *const push(STACK *const p, int e)

{

int m;

if(p->pos==p->max)

{ printf(" 栈已经为满 \n");

printf(" 是否扩展栈

1 为是,

0 为否 \n");

scanf("%d",&m);

if(m==1)

{

p->elems=(int*)realloc(p,(p->pos+1)*sizeof(int));

p->elems[p->pos+1]=e;

p->pos=p->pos+1;

return (p);

}

else

printf(" 插入失败 \n");

}

else

{p->elems[p->pos]=e;

p->pos=p->pos+1;

return (p);

}

}

STACK *const pop(STACK *const p, int &e)

{

int n;

if(p->pos==0)

{

printf(" 栈为空!! ");

}

else

e=p->elems[p->pos-1];

p->pos--;

return (p);

}

STACK *const assign(STACK*const p, const STACK&s)

{

p->elems=;

p->max=;

p->pos=;

return p;

}

void print(STACK*p)

{

int i;

if(p->pos==0)

{

printf(" 栈为空!! \n");

printf(" 最大容量为:\t%d",p->max);

}

else

{

printf(" 最大容量为: \t%d",p->max);

printf("\n当前的数: \n%d\n",p->pos);

printf(" 里面的元素为:\n");

for(i=p->pos-1;i>=0;i--)

{

printf("%d\t",p->elems[i]);

}

}

}

void destroySTACK(STACK*const p)

{

free(p->el

华中科技大学计算机学院c 实验,华中科技大学计算机学院C实验报告-实验一.doc...相关推荐

  1. 实验一熟悉matlab环境,数字信号处理报告实验一:熟悉MATLAB环境.doc

    数字信号处理报告实验一:熟悉MATLAB环境.doc 实验一熟悉MATLAB环境一 实验目的1. 熟悉MATLAB的主要操作命令.2. 学会简单的矩阵输入和数据读写.3. 掌握简单的绘图命令.4. 用 ...

  2. 计算机影响我们生活的调查报告,《计算机对大学生日常生活的带来影响》调查报告word模板.doc...

    计算机对大学生日常生活的带来影响 --调查报告 一.问题的背景 随着信息化的世纪的到来,随着计算机的普及,越来越多计算机走近大学生的生活圈子里,计算机对大学生日常生活的带来那些影响呢?计算机的普及对大 ...

  3. 华中科技大学计算机课程设计,华中科技大学计算机学院操作系统课程设计资料报告材料[1].doc...

    <华中科技大学计算机学院操作系统课程设计资料报告材料[1].doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<华中科技大学计算机学院操作系统课程设计资料报 ...

  4. 计算机网络实验华中科技大学,华中科技大学计算机网络实验报告.pdf

    华中科技大学计算机网络实验报告.pdf <计算机网络> 课程实验报告 姓名 院系 学号 南六楼 实验地点 实验时间 2013 年4 月21 日 计算机开放实验室 出勤.表现得分 实验报告 ...

  5. 华中科技大学计算机科学与技术学院官网,华中科技大学计算机科学与技术学院导师简介-管涛...

    工作经历2008-2010年,博士后,华中科技大学 2010-今,副教授,华中科技大学计算机学院 研究论文1.On-Device Mobile Landmark Recognition Using B ...

  6. 华中科技大计算机全国排名,2017华中科技大学全国排名第几

    2017华中科技大学全国排名第几 华中科技大学,简称华中大 ,坐落于湖北省武汉市,是中华人民共和国教育部直属的综合性全国重点大学.小编整理了关于华中科技大学2017年在全国所有大学里的排名,希望对大家 ...

  7. 计算机专业同济大学和华科,学计算机专业是去华中科技大学还是同济大学好?学霸教你选择...

    作为实力派,还真要综合考虑,既要考虑计算机类专业的学科实力,又要考虑地理位置.学校知名度.历年录取分数线以及将来就业情况.通过综合分析,华中科技大学作为世界一流学科建设高校,其学科优势比同济大学稍强: ...

  8. 华中科技大学计算机自考本科通过率,华中科技大学自考本科怎么样?考试可以在校内考吗?...

    华中科技大学自考本科怎么样?考试可以在校内考吗?自考报考华中科技大学的好不好?华中科技大学的自考本科怎样?考试地点是不是可以在校内考?请看以下内容. 华中科技大学自考本科怎么样? 作为湖北教育考试院官 ...

  9. 华科 计算机网络实验,华中科技大学计算机网络实验(二)报告.doc

    计算机网络课程实验报告 实验2:抗干扰编码 姓名 李蓝鑫 院系 自动化学院 学号 U201514280 实验地点 科技楼十二楼机房 实验时间 2018年5月3日 实验目的: 1. 了解抗干扰编码原理. ...

  10. 广西大学计算机专业女生就业前景,广西大学计算机学院比桂林电子科技大学计算机专业好吗?...

    类似问题答案 桂林电子科技大学 广西大学 云南大学 哪个学校的计算机比较牛?? 虽然桂电的王牌专业不是计算机的,但是相对来说桂电的最好~ 读计算机专业在桂林电子科技大学信息学院和广西师范学院师园学院哪 ...

最新文章

  1. OpenCV基本的阈值操作
  2. svn教程----TortoiseSVN客户端
  3. C 标准库 - locale.h
  4. 邵阳市计算机学校2021,邵阳市计算机中等专业学校在2021年邵阳市中等职业学校班主任基本功比赛中荣获市一等奖...
  5. java m e 获取公钥_Java如何生成公钥和私钥?
  6. ++递归 字符串全排列_Ann全排列的枚举_递归实现(基于Python)
  7. java连接HDFS+Kerberos配置参数示例
  8. Yolov4-tiny pth转onnx转tensorrt
  9. 码云 VS首次提交代码报错:failed to push some refs to 'https://gitee.com/Liu_Cabbage/ASP.NET-MVC-QQ-Connect.git'
  10. 如果到来,会是怎样情况,fuck,
  11. 图片的旋转,缩放和拖拽
  12. 博雅互动android面试题,【博雅互动怎么样?】-看准网
  13. dump内存文件的方法
  14. poj 1718 River Crossing
  15. 物理学与计算机相关参考文献,中国科学技术大学 计算物理学 教材与参考文献...
  16. matlab计算位温,大气位温、相当位温、饱和相当位温、静力稳定度
  17. 计算机科学版面费,《计算机科学》版面费
  18. 第二天:非线性规划(nonlinear programming)
  19. 万亿级重磅!刚刚,新一批基金投顾资格正式获批!广发、博时、招商等在列
  20. 【夸夸其谈】游戏中的货币是个什么玩意儿

热门文章

  1. linux 快速处理文本文件,Linux 下三种高效的文件处理技巧
  2. Oculus Home登录卡在提示在浏览器中继续操作
  3. 【31-Redis分布式锁进化史】
  4. ecall函数调用系统函数参数设置教程
  5. 学习学习再学习(一):学习意识
  6. 环球科技智库:2017外媒关注的中国十大科技企业
  7. nested exception is java.lang.ClassCastException: java.lang String cannot be cast to java.util.Map
  8. Deep Learning Models for Wireless SignalClassification with Distributed Low-Cost SpectrumSensors解读
  9. 西门子200smart与台达MS300变频器和欧姆龙E5CC温控器通讯程序 触摸屏与plc以太网通讯,PLC本体com口与变频器通讯485口相连,扩展模块SB CM01与欧姆龙温控器485通讯
  10. linux服务安全与监控二