Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- //カードの点数
- char total[13] = {11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10};
- //カードのマーク
- char *digit[13] = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
- //カードの数値
- char *mark[4] = {
- "ハート",
- "ダイヤ",
- "スペード",
- "クローバー",
- };
- int drawcard(int h);
- int main(int argc,char *argv[]){
- int dealer;
- int player;
- char y_n;
- srand(time(NULL));
- printf("[ブラックジャック] \n");
- //プレイヤー
- printf("プレイヤー一枚目:");
- player = drawcard(1);
- printf("プレイヤー二枚目:");
- player += drawcard(1);
- //ディーラーが引く
- do{
- dealer += drawcard(0);
- }while(dealer <= 16);
- //プレイヤーが引く
- while(player < 21){
- printf("もう1枚引きますか?(y/n) > ");
- scanf("%c", &y_n);
- while(getchar() != '\n'){ }
- if(y_n == 'y'){
- player += drawcard(1);
- }else if(y_n == 'n'){
- break;
- }
- }
- printf("\nディーラー:%d点 プレイヤー:%d\n",dealer, player);
- return 0;
- }
- int drawcard(int h){
- int draw_mark, draw_digit; //引いたマークと数
- int r; //引いたカードの点数
- draw_mark = rand() % 4 + 1; //マークを決定する
- draw_digit = rand() %13 + 1; //数字を決定する
- if(h){
- printf("%sの%s\n", mark[draw_mark-1], digit[draw_digit-1]);
- }
- r = total[draw_digit-1];
- return r;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement