黑马程序员技术交流社区
标题: C语言编程练习-找对手名单 [打印本页]
作者: 984326157 时间: 2015-7-16 00:34
标题: C语言编程练习-找对手名单
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三对赛手的名单。
- int main(int argc, const char * argv[]) {
- char a,b,c;
- for (a='x'; a<='z'; a++) {
- for (b='x'; b<='z'; b++) {
- if (a!=b) {
- for (c='x'; c<='z'; c++) {
- if (a!=c && b!=c) {
- if (a!='x' && c!='x' && c!= 'z') {
- printf("三对赛手的名单是:a VS %c,b VS %c,c VS %c",a,b,c);
- }
- }
- }
- }
- }
- }
-
- return 0;
- }
复制代码
作者: WHY-y 时间: 2015-7-16 19:50
好牛逼的感觉
作者: 丁丙乙甲 时间: 2015-7-16 21:02
#include <stdio.h>
int main(int argc, const char * argv[]) {
char ch[3]={'x','y','z'};
char a,b,c;
int i=0;
do{
c=ch[i++];
}while (c=='x'||c=='z');
i=0;
do{
a=ch[i++];
}while (a=='x'||a==c);
i=0;
do{
b=ch[i++];
}while (b==a||b==c);
printf("a对%c, b对%c, c对%c",a,b,c);
return 0;
}
作者: 丁丙乙甲 时间: 2015-7-16 21:05
- #include <stdio.h>
- int main(int argc, const char * argv[]) {
- char ch[3]={'x','y','z'};
- char a,b,c;
- int i=0;
- do{
- c=ch[i++];
- }while (c=='x'||c=='z');
- i=0;
- do{
- a=ch[i++];
- }while (a=='x'||a==c);
- i=0;
- do{
- b=ch[i++];
- }while (b==a||b==c);
- printf("a对%c, b对%c, c对%c",a,b,c);
- return 0;
- }
复制代码
作者: 294250051 时间: 2015-7-17 10:29
//甲、乙两个球队,甲有 A、B、C 三人,乙有 X、Y、Z 三人,A不和X比,C不和X、Z比,请找出三对对手的名单。
/*
#include "stdio.h"
int main()
{
int a,b,c;//这里的小写的a、b、c,其实就是指代X、Y、Z。
for(a='x';a<='z';a++) //三个变量全部遍历,寻找所有情况
for(b='x';b<='z';b++)
for(c='x';c<='z';c++)
if(a!=b&&a!=c&&b!=c) //首先,情况只有一种,没有一个人和两个人打的,所以要保证三者不同。
if(a!='x'&&(c!='x'&&c!='z')) //这里就是题目中的条件,a!='x',正好说明了,a是代替的球员X,球员A不和球员X比,所以变量a肯定不能指代球员X。因为最后输出球员A是和变量a指代的球员比赛。
printf("A vs %c\nB vs %c\nC vs %c",a,b,c);
return 0;
}
*/
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |