No.2ベストアンサー
- 回答日時:
#include <stdio.h>
#include <stdlib.h>
#define N 52
typedef struct Card_ {char* suit; char* number;} Card;
Card* make_deck(Card* array, size_t size) {
for (size_t i = 0; i < size; i++) {
switch (i % 4) {
case 0: array[i].suit = "Diamonds"; break;
case 1: array[i].suit = "Hearts"; break;
case 2: array[i].suit = "Spades"; break;
default: array[i].suit = "Clubs"; break;
}
switch(i % 13) {
case 0: array[i].number = "Ace"; break;
case 1: array[i].number = "Two"; break;
case 2: array[i].number = "Three"; break;
case 3: array[i].number = "Four"; break;
case 4: array[i].number = "Five"; break;
case 5: array[i].number = "Six"; break;
case 6: array[i].number = "Seven"; break;
case 7: array[i].number = "Eight"; break;
case 8: array[i].number = "Nine"; break;
case 9: array[i].number = "Ten"; break;
case 10: array[i].number = "Jack"; break;
case 11: array[i].number = "Queen"; break;
default: array[i].number = "King"; break;
}
}
return array;
}
Card* shuffle(Card* array, size_t size) {
int x;
Card tmp;
for (size_t i = 0; i < size; i++) {
x = rand() % size;
tmp = array[i];
array[i] = array[x];
array[x] = tmp;
}
return array;
}
int main(void) {
Card array[N];
Card* deck = shuffle(make_deck(array, N), N);
for (int i = 0; i < N; i++) {
printf("%s of %s\n", deck[i].suit, deck[i].number);
}
return EXIT_SUCCESS;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 英語で、訪ねてきてありがとう、何と言いますか。 2 2021/11/05 10:02
- 英語 TOEFLのWritten Expression問題について教えてください 3 2022/02/03 11:50
- TOEFL・TOEIC・英語検定 なぜ on both sides of と on either side of が同じ意味なの 1 2021/12/01 06:09
- 英語 なぜ both には of がつかないの 2 2021/11/30 14:38
- 英語 英語の文章について 5 2021/11/01 22:41
- 英語 すみませんが、英語エッセイのinstructionをチェックしていただけますか? Today, we 2 2021/10/28 21:27
- 英語 7番勝負"a best-of-seven series"の表現等について 5 2023/09/28 13:46
- 英語 【英語】 (一切れの)ケーキを食べた。 を英語にすると、 a piece of か some は必ず 5 2021/12/16 08:31
- 英語 消灯から点灯にかわる 英語 1 2021/12/15 14:23
- 英語 「所有格+数量詞+名詞」と「数量詞+of+所有格+名詞」の意味やニュアンスの違い等について 4 2023/06/28 11:34
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
政治家の話し方、特に岸田。ん...
-
山中裕 大津綾香 黒川敦彦 立花...
-
メールアドレスのこの棒って、...
-
トランプのマークのフォント
-
武井俊輔
-
VIPとCIPラウンジ
-
関西学院中退して、カイロ・ア...
-
政治家のように言った言わない...
-
貝合わせって何ですか? https:...
-
ロシア人にやってはいけないこ...
-
テレビではインバウンドとかキ...
-
喧嘩が強くなりたい。パート3 ...
-
川に落ちて死ぬ ニュースとかで...
-
4つある言葉
-
ローマ字入力:マクロンの出し...
-
これ、本物の岸田総理ではなく...
-
京阪電鉄はなぜ梅田乗入を諦め...
-
個人的な恨みは無いんですが、...
-
政治家ってどんな人❓
-
ガザ地区がトップニュースにな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
山中裕 大津綾香 黒川敦彦 立花...
-
メールアドレスのこの棒って、...
-
4つある言葉
-
関西学院中退して、カイロ・ア...
-
なぜ弱い立場の人を無視した政...
-
今の日本は高齢者、障害者に対...
-
そもそもの不正の温床である、...
-
個人的な恨みは無いんですが、...
-
トランプのマークのフォント
-
国の政治の今の腐敗は全て国民...
-
京阪電鉄はなぜ梅田乗入を諦め...
-
VIPとCIPラウンジ
-
あなたは鈴木財務大臣、神田財...
-
中国に行くことは
-
こんなに日本が大変なことにな...
-
30代後半 これだけ娯楽に溢れて...
-
長選挙について、近ごろから選...
-
超少子高齢化社会で日本の将来...
-
天皇陛下と大統領はどちらがえ...
-
学校で習った政治、政治家にな...
おすすめ情報