ASCII码3,4,5,6对应的字符在我的电脑上看不到,说不定机房的电脑可以看到,过段时间去那里试试
学校机房可以看到哈
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
typedef struct card
{
int suit;
char face[3];
}CARD;
void fillcard(CARD card[]);
void initialize(int result[]);
void deal(CARD card[],int result[]);
void shuffle(int result[]);
int main()
{
CARD card[52];
int result[52];
fillcard(card);
initialize(result);
deal(card,result);
shuffle(result);
printf("\n");
deal(card,result);
return 0;
}
void fillcard(CARD card[]){
int psuit[]={3,4,5,6};
char *pface[]={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
int i;
for(i=0;i<52;i++){
card[i].suit=psuit[i/13];
strcpy(card[i].face,pface[i%13]);
}
}
void initialize(int result[]){
int i;
for(i=0;i<52;i++){
result[i]=i;
}
}
void deal(CARD card[],int result[]){
int i,j=0;
for(i=0;i<52;i++){
printf("%c%2s ",card[result[i]].suit,card[result[i]].face);
j++;
if(j%13==0){
printf("\n");
}
}
}
void shuffle(int result[]){
int i,j,temp;
srand(time(NULL));
for(i=0;i<52;i++){
j=rand()%52;
temp=result[i];
result[i]=result[j];
result[j]=temp;
}
}