iT邦幫忙

2021 iThome 鐵人賽

DAY 26
0
自我挑戰組

C語言救救我系列 第 26

Day26-"練習-1"

最後五篇了 加油!

今天練習CPE曾經出過的一題題目

任意一個正方形會是長方形,但不是所有的長方形都是正方形。

任意一個長方形會是四邊形,但不是所有的四邊形都是長方形。

任意一個四邊形是由四個邊所組成的,但不是所有由四邊所組成的形狀都會是四邊形。

然後我們現在有四個邊,我們需要判斷出他們,看他們能否組成正方形,若無法,看他們是否能組成長方形,若還是無法,就判斷出他們是否為四邊形。

輸入第一行為判斷此程式需執行幾次判斷為四邊形
之後的輸入即為四個邊的長度,四個數字均為正整數,範圍由0到230

輸出規則是,正方形印出正方形,長方形印出長方形,四邊形印出四邊形,若不是四邊形則印出香蕉
.
.
.
.
.

#include <stdio.h>
#include <stdlib.h>

void main(void)
{
	int x,y;
	int a[5],i,j;
	scanf("%d",&x);
	for(y=0;y<x;y++)
	{
		scanf("%d %d %d %d",&a[0],&a[1],&a[2],&a[3]);
		for(i=0;i<4;i++)
		{
			for(j=i;j<4;j++) 
			{
				if(a[j]<a[i]) 
				{
					a[4] = a[j];
					a[j] = a[i];
					a[i] = a[4];
           		}
			}
		}
		if(a[0]==a[1] && a[1]==a[2] && a[2]==a[3]) 
		{
			printf("正方形\n");
		}
		else if	(a[0]==a[1] && a[2]==a[3]) 
		{
			printf("長方形\n");	
		}
		else if	(a[0]+a[1]+a[2]<a[3]) 
		{
			printf("香蕉\n");	
		}
		else
		{
			printf("四邊形\n");
		} 	
	}
}

我們這邊會先將輸入的數字進行由小到大的排列,排列完後可以讓我們更方便進行判斷,像是在判斷是不是香蕉時需要由最小三個邊相加小於最大邊

/images/emoticon/emoticon29.gif

Day26就到這啦BYE~


上一篇
Day25-"指標變數"
下一篇
Day27-"練習-2"
系列文
C語言救救我30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言