/****************************************
* File Name : reasoning.c
* Creat Data : 2015.1.27
* Author : ZY
*****************************************/ /*逻辑推理与判断*/
/*谁家孩子跑得快*/
/*张,王,李三家各有一个小孩。一天,三家的九个孩子在一起比赛短跑,规定不分年龄大小,
跑第一得9分,跑第二得8分,依次类推,比赛结果各家总分相同,且这些孩子没有同时到达终
点的,也没有一家的两个或三个孩子获得相连的名次,已知获第一的是李家的孩子,获得第二
的是王家的孩子,问获得最后一名的是谁家的孩子?
可知总分为45,则各家15分
用矩阵输出*/#include <stdio.h>
int main(void)
{int i,j,k,who;int score[4][4];score[1][1] = 7;//score[1],张家孩子的得分score[2][1] = 8;//score[2],王家孩子的得分score[3][1] = 9;//score[3],李家孩子的得分for(i = 4;i < 6;i++)//i:张家孩子在4到5分段可能的分数{for(j = 4;j < 7;j++)//j:王家孩子在4到6分段可能的分数{for(k = 4;i != j &&k < 7;k++)//k:李家孩子在4到6分段可能的分数{if((k!=i&&k!=j)&&(15-i-score[1][1]!=15-j-score[2][1])//分数不能并列&&(15-i-score[1][1]!=15-k-score[3][1])&&(15-j-score[2][1]!=15-k-score[3][1])){//将满足条件的计入二维数组(矩阵)score[1][2] = i;score[1][3] = 15-i-7;score[2][2] = j;score[2][3] = 15-j-8;score[3][2] = k;score[3][3] = 15-k-9;}}}}for(who = 0,i = 1;i < 4;i++,printf("n")){for(j = 1;j < 4;j++){printf("%d ",score[i][j]);//输出各家孩子的分数if(score[i][j] == 1){who = i;}}}if(who == 1)//输出最后判断的结果{printf("The last one arrived to end is a child from family Zhang.n");}else if(who == 2){printf("The last one arrived to end is achild from family Wang.n");}else{printf("The last one arrived to end is achild from family Li.n");}return 0;
}
本文发布于:2024-02-04 14:31:30,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170709395756387.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |