• 大小: 801KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-03
  • 语言: C/C++
  • 标签: c++lab  fsdf  

资源简介

华中科技大学C++实验源代码和可执行程序,以及报告。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 


struct STACK {
int  *elems; //申请内存用于存放栈的元素
int   maxNum; //栈能存放的最大元素个数
int   pos; //栈实际已有元素个数,栈空时pos=0;
};

void initSTACK(STACK *const p int m); //初始化p指向的栈:最多m个元素
void initSTACK(STACK *const p STACK * const s); //用栈s初始化p指向的栈
int  sizeNum(const STACK *const p); //返回p指向的栈的最大元素个数max
int  howMany(const STACK *const p); //返回p指向的栈的实际元素个数pos
int  getelem(const STACK *const p int x); //取下标x处的栈元素
STACK *const push(STACK *const p int e);  //将e入栈,并返回p
STACK *const pop(STACK *const p int *e);  //出栈到e,并返回p
STACK *const assignValue(STACK*const p STACK *const s); //赋s给p指的栈并返回p
void print(const STACK*const p); //打印p指向的栈
void destroySTACK(STACK*const p); //销毁p指向的栈

FILE *fp;


int main(int argc char * argv[])
{
int err;
if ((err = fopen_s(&fp“U201414596_1““w“)) != 0) {
printf(“Cannot open file strike any key exit!“);
getchar();
}

if (argc == 1)
{
struct STACK *pStack = (struct STACK *)malloc(sizeof(struct STACK));
struct STACK *sStack = (struct STACK *)malloc(sizeof(struct STACK));
initSTACK(sStack 5);
push(sStack 4);
push(sStack 7);
push(sStack 6);
push(sStack 1);
push(sStack 3);
push(sStack 4);

int operate = 1;  //操作序号 在0-12之间
int isInitial = 0; //判断栈是否存在
int maxNum;
int e;
int temp;
int input;
while (operate) {
system(“cls“);
printf(“\n\n“);
printf(“    欢  迎  使  用  顺  序  线  性  表  菜  单 \n“);
printf(“-------------------------------------------------\n“);
printf(“       1. 初始化栈P            7. 将一个数出栈到e\n“);
printf(“       2. 从栈S初始化栈P       8. 赋s给p指向的栈\n“);
printf(“       3. 栈元素的最大个数     9. 打印p指向的栈 \n“);
printf(“       4. 栈中实际元素个数     10. 销毁p指向的栈\n“);
printf(“       5. 取下标为x的栈元素                   \n“);
printf(“       6.  输入一个数并入栈    0. 退出        \n“);
printf(“-------------------------------------------------\n“);
printf(“    请选择你的操作[0~11]:“);
scanf_s(“%d“ &operate);
switch (operate)
{
case 1:
//InitStack
if (isInitial == 0)
{
printf(“\n\t请输入栈的大小:“);
scanf_s(“%d“ &maxNum);
initSTACK(pStack maxNum);
isInitial = 1;
printf(“\n\t新建栈成功,栈的大小为%d\n“ maxNum);
}
else
{
printf(“\n\t栈已经被创建\n“);
}

getchar();
printf(“\n\t\t(按任意键继续……)\n“);
getchar();
break;
case 2:
//initSTACK:S-P
if (isInitial)printf(“\n\t栈p已经初始化!“);
else
{
initSTACK(pStack sStack);
printf(“\n\t成功从栈s新建栈p“);
}
getchar();
printf(“\n\t\t(按任意键继续……)\n“);
getchar();
break;
case 3:
//sizeNum
if (!isInitial)printf(“\n\t栈p不存在!“);
else
{
temp = sizeNum(pStack);
printf(“\n\t该栈的最大容量是%d“ temp);
}
getchar();
printf(“\n\t\t(按任意键继续……)\n“);
getchar();
break;
case 4:
//howMany
if (!isInitial)printf(“\n\t栈p不存在!“);
e

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-10-28 22:11  U201414596\
     目录           0  2018-10-28 22:11  U201414596\U201414596_1\
     文件       12142  2018-10-11 21:19  U201414596\U201414596_1\U201414596_1.cpp
     文件       47104  2017-10-29 20:35  U201414596\U201414596_1\U201414596_1.exe
     目录           0  2018-10-28 22:11  U201414596\U201414596_2\
     文件       11381  2017-11-08 21:00  U201414596\U201414596_2\U201414596_2.cpp
     文件       55808  2017-11-05 10:27  U201414596\U201414596_2\U201414596_2.exe
     目录           0  2018-10-28 22:11  U201414596\U201414596_3\
     文件       11315  2017-11-08 20:55  U201414596\U201414596_3\U201414596_3.cpp
     文件       56832  2017-11-05 11:49  U201414596\U201414596_3\U201414596_3.exe
     目录           0  2018-10-28 22:11  U201414596\U201414596_4\
     文件       11577  2017-11-09 19:21  U201414596\U201414596_4\U201414596_4.cpp
     文件       57344  2017-11-09 19:19  U201414596\U201414596_4\U201414596_4.exe
     目录           0  2018-10-28 22:11  U201414596\U201414596_5\
     文件       13885  2017-11-09 21:55  U201414596\U201414596_5\U201414596_5.cpp
     文件       61952  2017-11-09 21:55  U201414596\U201414596_5\U201414596_5.exe
     目录           0  2018-10-28 22:11  U201414596\U201414596_6\
     文件       16531  2017-11-23 21:45  U201414596\U201414596_6\U201414596_6.cpp
     文件       69120  2017-11-23 20:26  U201414596\U201414596_6\U201414596_6.exe
     文件     1086900  2017-11-23 21:52  U201414596\U201414596_6\U201414596_6_卢振兴.doc

评论

共有 条评论

相关资源