• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天之道

            享受編程的樂趣。
            posts - 118, comments - 7, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            棧的應用——撲克洗牌

            Posted on 2012-02-28 00:36 hoshelly 閱讀(198) 評論(0)  編輯 收藏 引用 所屬分類: DS && Algorithm
            #include<stdlib.h>
            #include<time.h>
            #include<stdio.h>
            #define MAXSTACK 100//棧的最大容量
            int stack[MAXSTACK];//棧的數組聲明
            int top =-1; //棧的頂端
            //棧的數據存入
            int push(int value)
            {
               if(top>=MAXSTACK)//是否超過容量
               {
                  printf("棧的內容全滿\n");
                  return -1;
                }
                top++;
                stack[top]=value;//棧指針加1,存入棧
            }
            //棧數據的取出
            int pop()
            {
               int temp;
               if(top<0)
               {
                  printf("棧內容是空的\n");
                  return -1;
                }
                temp = stack[top];
                top--;
                return temp;
            }
            //檢查棧是否是空的
            int empty()
            {
              if(top == -1)
              return 1;
              else
              return 0;
             }
             
             //主程序:運用empty()檢查牌是否發完
             
            //紅心:數組0~12,方塊:數組13~25,梅花:數組26~38,黑桃:數組39~51
             
             void main()
             {
                int card[52];
                int pos;
                int i,temp;
                for(i=0;i<52;i++)
                  card[i]=0;
                i=0;
                while(i!=5)//洗五張牌循環
                {
                   pos=rand()%52;//隨機數取值0~51
                   if(card[pos] == 0) //是否是未洗牌
                   {
                      push(pos);//存此張牌進棧
                      card[pos]=1;//設置此張牌洗過
                      i++;//下一張牌
                    }
                }
                
                while(!empty())//發完棧全部的牌
                {
                   temp=pop(); //取出棧數據
                   printf("[%c%3d]",temp/13+3,temp%13+1);
                }
                printf("\n");
            }
            久久人人爽人人爽人人片av高请| 99精品久久精品一区二区| 久久99精品久久久久久9蜜桃| 久久久久国产亚洲AV麻豆| 欧美伊人久久大香线蕉综合| 亚洲精品乱码久久久久久蜜桃图片| 久久99热只有频精品8| 久久中文字幕无码专区| 久久亚洲精品国产精品| 日韩一区二区三区视频久久| 婷婷伊人久久大香线蕉AV| 天天久久狠狠色综合| 99久久国产精品免费一区二区| 久久中文娱乐网| 亚洲αv久久久噜噜噜噜噜| 久久国产乱子伦精品免费午夜| 亚洲人成网亚洲欧洲无码久久| 久久国产综合精品五月天| 久久久久亚洲av无码专区| 国产精品九九久久免费视频 | 精品久久久久久久| 久久久国产亚洲精品| 久久免费99精品国产自在现线 | 久久无码国产| 国产精品无码久久综合网| 久久99精品国产一区二区三区| 香蕉久久夜色精品升级完成| 人妻少妇精品久久| 7国产欧美日韩综合天堂中文久久久久| 亚洲欧美伊人久久综合一区二区| 天天做夜夜做久久做狠狠| 狠狠人妻久久久久久综合| 94久久国产乱子伦精品免费 | 国内精品久久久久久中文字幕| 久久久久久九九99精品| 欧美熟妇另类久久久久久不卡| 久久精品国产亚洲AV影院| 性欧美大战久久久久久久久| 日韩精品久久久肉伦网站 | 97超级碰碰碰碰久久久久| 一级做a爰片久久毛片人呢|