1.
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果
A选手说:B第二,我第三;
B选手说:我第二,E第四;
C选手说:我第一,D第二;
D选手说:C最后,我第三;
E选手说:我第四,A第一;
比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。
int Pre_dict()
{
int a, b, c, d, e;
for(a = 1; a<=5; a++)
{
for(b = 1; b<=5; b++)
{
for(c = 1; c<=5; c++)
{
for(d = 1; d<=5; d++)
{
for(e = 1; e<=5; e++)
{
判断条件
/*if( (((2 == b) && (3 != a) || (2 != b) && (3 == a)))
&& (((2 == b) && (4 != e) || (2 != b) && (4 == e)))
&& (((1 == c) && (2 != d) || (1 != c) && (2 == d)))
&& (((5 == c) && (3 != d) || (5 != c) && (3 == d)))
&& (((4 == e) && (1 != a) || (4 != e) && (1 == a))) )
{
if(a != b && a != c && a != d && a != e
&& b != c && b != d && b != e
&& c != d && c != e
&& d != e)*/
if( (1== (2 == b) + (3 == a))
&& (1== (2 == b) + (4 == e))
&& (1== (1 == c) + (2 == d))
&& (1== (5 == c) + (3 == d))
&& (1== (4 == e) + (1 == a)) )
if(120 == a * b * c * d * e)
{
printf("A = %d, B = %d, C = %d, D = %d, E = %d\n"
,a, b, c, d, e);
}
}
}
}
}
}
return 0;
}
2.
日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个
嫌疑犯的一个。以下为4个嫌疑犯的供词。
A说:不是我。
B说:是C。
C说:是D。
D说:C在胡说
已知3个人说了真话,1个人说的是假话。
现在请根据这些信息,写一个程序来确定到底谁是凶手。
int Find_killer()
{
char killer = 'a';
//判断
for(killer = 'A'; killer<='D'; killer++)
{
if(3 == ((killer != 'A') + (killer == 'C')
+ (killer == 'D') + (killer != 'D')))
{
printf("凶手是:%c\n", killer);
}
}
return 0;
}
3.在屏幕上打印杨辉三角。
1
1 1
1 2 1
1 3 3 1
#define N 10
int Triangle_Yang()
{
int a[N][N];
int i = 0;
int j = 0;
每行最后一个和第一个值
for(i = 0; i<N; i++)
{
a[i][0] = 1;
a[i][i] = 1;
}
计算其他元素的值
for(i = 2; i<N; i++)
{
for(j = 1; j<i; j++)
{
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
}
for(i = 0; i<N; i++)
{
for(j = 0; j<2*(N - i); j++)//4*(N-i)/2 中心对齐
{
printf(" ");
}
for(j = 0; j<=i; j++)
{
printf("%4d",a[i][j] );
}
printf("\n");
}
return 0;
}