解题思路:
给扑克牌标记
注意事项:

参考代码:

                

#include<stdio.h>

#include<string.h>

struct 

{

     char nu[3];

     char lei;

     int num;

     int n1;

}Pai[5],t;

int main()

{

     char buf[100];

     int i=0,j;

     gets(buf);

     for(j=0;j<5;j++)

     {

         if(buf[i]!='1')

         {

             if(buf[i]>='2'&&buf[i]<='9')

             Pai[j].num=buf[i]-'0';

         else 

         {

             if(buf[i]=='J') Pai[j].num=11;

             if(buf[i]=='Q') Pai[j].num=12;

             if(buf[i]=='K') Pai[j].num=13;

             if(buf[i]=='A') Pai[j].num=14;

         }

             Pai[j].nu[0]=buf[i++];

             Pai[j].nu[1]='\0';

         }

         else 

         {

             Pai[j].nu[0]=buf[i++];

             Pai[j].nu[1]=buf[i++];

             Pai[j].nu[2]='\0';

             Pai[j].num=10;

         }

         switch(buf[i])

         {

             case 'd':Pai[j].n1=1;break;

             case 'c':Pai[j].n1=2;break;

             case 'h':Pai[j].n1=3;break;

             case 's':Pai[j].n1=4;break;

         }

            Pai[j].lei=buf[i++];

     }

     for(i=0;i<5;i++)

     {

         for(j=0;j<5-1-i;j++)

         {

             if(Pai[j].num>Pai[j+1].num)

             {

                 t=Pai[j];

                 Pai[j]=Pai[j+1];

                 Pai[j+1]=t;

             }

             else if(Pai[j].num==Pai[j+1].num)

             {

                 if(Pai[j].n1>Pai[j+1].n1)

                 {

                     t=Pai[j];

                     Pai[j]=Pai[j+1];

                     Pai[j+1]=t;

                 }

             }

         } 

     }

     for(j=0;j<5;j++)

     {

         if(j!=0) printf(" ");

         printf("%s%c",Pai[j].nu,Pai[j].lei);

     }

return 0;

}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论