在一個撲克牌游戲中,不同的撲克牌代表不同的數值。印有數字 3-10 的牌, 數值為其本身,J 的數值為 11,Q 為 12,K 為 13,A 為 14,印有數字 2 的牌 數值為 15。第一行輸入為將要發給你的牌的數目,第二行輸入為你收到的撲
克牌(之間以空格隔開),第三行輸入為要求打出的牌的數目。請通過計算,
輸出你所能打出的數值最大的撲克牌組合(按照數值從小到大排列),并輸出
它們的總數值
輸入:
5
6 9 K 2 3
3
輸出:
9 K 2
37。 求助用c語言
這是我的錯誤代碼
#include<stdio.h>
int main()
{
int x,i,n,m,j,t;
int a[13]={3,4,5,6,7,8,9,10,11,12,13,14};
char b[100];
scanf("%d",&n);
scanf("%s",&b);
scanf("%d",&m);
for(i=0;i<n;i++)
{
if(b[i]=='J') b[i]=11;
if(b[i]=='Q') b[i]=12;
if(b[i]=='K') b[i]=13;
if(b[i]=='A') b[i]=14;
if(b[i]=='2') b[i]=15;
}
for(j=0;j<m;j++)
{
for(i=0;i<m-j;i++)
{
if(b[i]>b[i+1])
{
t=b[i];
b[i]=b[i+1];
b[i+1]=t;
}
}
}
for(i=0;i<n;i++)
{
if(b[i]==11) b[i]='J';
if(b[i]==12) b[i]='Q';
if(b[i]==13) b[i]='K';
if(b[i]==14) b[i]='A';
if(b[i]==15) b[i]='2';
}
for(n;n>=n-m;n--)
{
printf("%2d",b[n]);
}
for(n;n>=n=m;n--)
{
x=x+b[n];
}
return 0;
}
uj5u.com熱心網友回復:
你的問題呢
uj5u.com熱心網友回復:
幫我做一下這道題轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/179395.html
標籤:C語言
