1. 程式人生 > >【C語言】一些有意思的C語言題目,

【C語言】一些有意思的C語言題目,

    有一些有意思的題目,然後我們來試著做一下

5位運動員參加了10米臺跳水比賽,有人讓他們預測比賽結果

A選手說:B第一,我第三。

B選手說:我第二,E第四。

C選手說:我第一,D第二。

D選手說:C最後,我第三。

E選手說:我第四,A第一。

//排名判斷
#include <stdio.h>
int main()
{	
	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((b == 1)+(a == 3) == 1&&
						   (b == 2)+(e == 4) == 1&&
						   (c == 1)+(d == 2) == 1&&
						   (c == 5)+(d == 3) == 1&&
						   (e == 4)+(a == 1) == 1)
						{
							printf("a:%d b:%d c:%d d:%d e:%d\n",a,b,c,d,e);
							return 0;
						}
					}
				}
			}
		}
	}
}

  日本某地發生了一件謀殺案,警察通過排查確定殺人凶手必為4個嫌疑犯的一個。以下為4個嫌疑犯的供詞。

A說:不是我。

B說:是C。

C說:是D。

D說:C在胡說。

//殺手判斷
#include<stdio.h>
int main()
{
	int i;
	char people[] = {'a','b','c','d'};
	char kill;
	for(i = 0;i < sizeof(people)/sizeof(people[0]);i++)
	{	
		kill = people[i];
		if((people[0] != kill) + (people[2] == kill) + (people[3] == kill) +(people [3] != kill) == 3)
		{
			printf("凶手是%c",kill);
		}
	}
}

4.在螢幕上列印楊輝三角。

//輸出楊輝三角
#include <stdio.h>
int main()
{
	int num[141][1000] = {0};
	int line = 0;                
	int i,j,k;            
	num[0][1] = 1;            //在楊輝三角兩邊額外宣告為0方便運算
	num[1][1] = 1;
	num[1][2] = 1;
	printf("請輸入行數(必須大於3)");
	scanf("%d",&line);
	for( i =0;i < line;i++)
	{
		for(j = 0;j < line -i;j++)    //輸出空格咯
		{
			printf("  ");
		}
		if(0 == i)                    //輸出第一行,第二行
			printf(" %2d",1);
		else                            //第三行輸出。
		{
			if(1 == i)
				printf("%2d    %2d",1,1);
			else
			{	
				for(k = 1;k <= i+1;k++)
				{	
					num[i][k] = num[i-1][k-1]+num[i-1][k];
					printf("%2d   ",num[i][k]);
				}
			}
		}
		printf("\n");
	}
	return 0;
}