A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yesha 中级黑马   /  2015-4-11 22:37  /  397 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


#include<malloc.h>

#include<stdio.h>

#define OVERFLOW         -2

#define Stack_init_size  100

#define Stackincrement   10


typedef int SElemType;

typedef struct

{

         SElemType*base;

         SElemType*top;

         intstacksize;

}SqStack;


void main()

{   


         SqStackS;   

         voidInitStack(SqStack*S);           //构造栈的声明

         

   printf("构造一个栈并读入数据 \n");

   InitStack(&S);  //构造栈

   printf("\n");  

}

void InitStack(SqStack*S)//构造栈

{

         inti,n;

         SElemTypet;

         S->base=(SElemType*)malloc(Stack_init_size*sizeof(SElemType));


         S->top=S->base;

   S->stacksize=Stack_init_size;

         printf("请输入要读入栈内的数据个数:");

         scanf("%d",&n);

         intsum=0;

         for(i=0;i<n;i++)

         {

                   printf("输入元素:");

       scanf("%d",&t);

                   *(S->top)=t;

                   printf("头指针元素为:%d\n",t);

                   S->top=S->top+1;

                   sum+=t;            

         }

         printf("栈内元素和为:%d\n",sum);

}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马