总共有六个文件,两个头文件base.h、stack.h,三个源文件main.c、stack.c、base.c,一个cfg后缀名的资源文本文件base.cfg,因为这个是vs2022的,base.c和base.h是打开base.cfg文件用的
有个头文件#define _CRT_SECURE_NO_WARNINGS 1 ,如果用其他的编译器运行,请把这个删除
创建cfg文件方法:
右键你的项目,我的是Project12
选择添加新建项
在左边的Visual C++下面的选项点实用工具,然后中间黑色窗口选择文本文档,下面有个名称,在填写名称的时候,把后缀名txt改为cfg即可
main.c源文件的代码:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include "stack.h"
#include "base.h"
#define MSIZE 100 /*顺序栈的最长长度*/
int main(int argc, char* argv[])
{
int cmd;
Stack S;
char op;
ElemType x;
int y;
welcome();/*欢迎logo*/
do
{
loadcfg();/*菜单*/
cmd = command();/*接受选项*/
switch (cmd)
{
case 1: /*初始化*/
if (Create(&S, MSIZE) == ERROR)
{
printf("栈初始化失败!\n");
cmd = 0;
}
else
{
printf("栈初始化OK!\n");
}
break;
case 2: /*元素入栈*/
{
do
{
printf("请输入元素x:");
scanf("%d", &x);
if (Push(&S, x))
{
printf("元素 %d 已入栈!\n", x);
}
else
{
printf("入栈失败!\n");
}
printf("是否继续?(Y\\N,Y):");
getchar();
scanf("%c", &op);
op = (op ==