学习一下别人代码
#include
(849)#include
#define MAX 100000
static arrtab[MAX]; //定义一个全局变量 arrtab字符数组,模拟存储栈
static arrbuf = 0; //arrtab数组的下标
void push(int n)
{
if(arrbuf < MAX) //检测下标是否溢出
arrtab[arrbuf++] = n;
}
int pop(void)
{
return arrbuf > 0 ? printf("%d
",arrtab[--arrbuf]) : printf("error
");//使用三目运算符,返回一个printf
}
int top(void)
{
return arrbuf > 0 ? printf("%d
",arrtab[arrbuf-1]) : printf("error
");//这里要注意top和pop虽然目前的输出一样,但是的下标变化是不一样的,top是下标减1,但是实际下标不移动
}
int main()
{
int n;
char s[6];
scanf("%d",
while(n--)
{
scanf("%s",s);
if(strcmp(s,"push") == 0)
{
int num = 0;
scanf("%d",
push(num);
}
else if(strcmp(s,"pop") == 0)
{
pop();
}
else if(strcmp(s,"top") == 0)
{
top();
}
}
retu
#include
(849)#include
#define MAX 100000
static arrtab[MAX]; //定义一个全局变量 arrtab字符数组,模拟存储栈
static arrbuf = 0; //arrtab数组的下标
void push(int n)
{
if(arrbuf < MAX) //检测下标是否溢出
arrtab[arrbuf++] = n;
}
int pop(void)
{
return arrbuf > 0 ? printf("%d
",arrtab[--arrbuf]) : printf("error
");//使用三目运算符,返回一个printf
}
int top(void)
{
return arrbuf > 0 ? printf("%d
",arrtab[arrbuf-1]) : printf("error
");//这里要注意top和pop虽然目前的输出一样,但是的下标变化是不一样的,top是下标减1,但是实际下标不移动
}
int main()
{
int n;
char s[6];
scanf("%d",
while(n--)
{
scanf("%s",s);
if(strcmp(s,"push") == 0)
{
int num = 0;
scanf("%d",
push(num);
}
else if(strcmp(s,"pop") == 0)
{
pop();
}
else if(strcmp(s,"top") == 0)
{
top();
}
}
retu
2022-09-07
在牛客打卡2天,今天也很努力鸭!
全部评论
相关推荐
10-22 12:03
山东大学 Java
程序员小白条:26届一般都得有实习,项目可以随便写的,如果不是开源社区的项目,随便包装,技术栈也是一样,所以本质应该找学历厂,多投投央国企和银行,技术要求稍微低一点的,或者国企控股那种,纯互联网一般都得要干活 点赞 评论 收藏
分享

查看10道真题和解析