鱼C论坛

 找回密码
 立即注册
查看: 1870|回复: 3

大话骰问题 为什么输出有几个是错误的

[复制链接]
发表于 2022-12-27 16:05:49 | 显示全部楼层 |阅读模式
20鱼币
  1. #include<stdio.h>
  2. #include<string.h>

  3. int one=0,two=0,three=0,four=0,five=0,six=0;
  4. pre(char dian[])
  5. {
  6.         one=0;two=0;three=0;four=0;five=0;six=0;
  7.         for(int i=0;i<6;i++)
  8.         {
  9.                 switch(dian[i]-'0')
  10.                 {
  11.                         case 1:
  12.                                 one++;
  13.                                 break;
  14.                                
  15.                         case 2:
  16.                                 two++;
  17.                                 break;
  18.                                
  19.                         case 3:
  20.                                 three++;
  21.                                 break;
  22.                                
  23.                         case 4:
  24.                                 four++;
  25.                                 break;
  26.                                
  27.                         case 5:
  28.                                 five++;
  29.                                 break;
  30.                                
  31.                         case 6:
  32.                                  six++;
  33.                                  break;
  34.                 }
  35.         }
  36. }

  37. int main()
  38. {
  39.        
  40.         int n;
  41.         scanf("%d",&n);
  42.        
  43.                 getchar();
  44.                 int k;
  45.                 for(k=0;k<n;k++)
  46.                 {

  47.                         int i,j,m;
  48.                         char dian[6]={0};
  49.                         for(i=0;i<6;i++)
  50.                         {
  51.                                 scanf("%c",&dian[i]);

  52.                         }
  53.                        
  54.                         pre(dian);

  55.                        
  56.                         scanf("%d",&m);
  57.                         getchar();
  58.                        
  59.                         for(i=0;i<m;i++)
  60.                         {
  61.                                 int a,b;
  62.                                 scanf("%d %d",&a,&b);
  63.                                 getchar();
  64.                                 switch(b)
  65.                                 {
  66.                                         case 1:
  67.                                                 if(one>=a)
  68.                                                 {
  69.                                                         printf("%d:true\n",i+1);
  70.                                                 }
  71.                                                 else
  72.                                                 {
  73.                                                         printf("%d:false\n",i+1);
  74.                                                 }
  75.                                                 break;
  76.                                                
  77.                                         case 2:
  78.                                                 if(two+one>=a)
  79.                                                 {
  80.                                                         printf("%d:true\n",i+1);
  81.                                                 }
  82.                                                 else
  83.                                                 {
  84.                                                         printf("%d:false\n",i+1);
  85.                                                 }
  86.                                                 break;
  87.                                                
  88.                                         case 3:
  89.                                                 if(three+one>=a)
  90.                                                 {
  91.                                                         printf("%d:true\n",i+1);
  92.                                                 }
  93.                                                 else
  94.                                                 {
  95.                                                         printf("%d:false\n",i+1);
  96.                                                 }
  97.                                                 break;
  98.                                        
  99.                                         case 4:
  100.                                                 if(four+one>=a)
  101.                                                 {
  102.                                                         printf("%d:true\n",i+1);
  103.                                                 }
  104.                                                 else
  105.                                                 {
  106.                                                         printf("%d:false\n",i+1);
  107.                                                 }
  108.                                                 break;
  109.                                                
  110.                                         case 5:
  111.                                                 if(five+one>=a)
  112.                                                 {
  113.                                                         printf("%d:true\n",i+1);
  114.                                                 }
  115.                                                 else
  116.                                                 {
  117.                                                         printf("%d:false\n",i+1);
  118.                                                 }
  119.                                                 break;
  120.                                                
  121.                                         case 6:
  122.                                                 if(six+one>=a)
  123.                                                 {
  124.                                                         printf("%d:true\n",i+1);
  125.                                                 }
  126.                                                 else
  127.                                                 {
  128.                                                         printf("%d:false\n",i+1);
  129.                                                 }
  130.                                                 break;
  131.                                                
  132.                                 }
  133.                         }
  134.                         putchar('\n');
  135.                 }
  136.        
  137.        
  138.         return 0;
  139. }
复制代码

LCF9UQ08%(NN5H%M@)ER@Z4.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-12-27 16:06:30 | 显示全部楼层
测试结果大部分是正确的 最后有几行输出错误或者输出空白
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-12-27 16:21:23 | 显示全部楼层
我要是说6个1岂不是全是真话?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-12-29 20:22:11 | 显示全部楼层
jhq999 发表于 2022-12-27 16:21
我要是说6个1岂不是全是真话?

是这样的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-30 17:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表