1. 程式人生 > >C語言程式設計進階 翁愷 期末考試的程式設計題部分

C語言程式設計進階 翁愷 期末考試的程式設計題部分

1

最小包圍矩形(10分)

題目內容:

給定一組二維座標,表示直角座標系內的一個多邊形的連續的頂點的座標序列。計算能包圍這個多邊形的平行於座標軸的最小矩形,輸出它的左下角和右上角的座標。

輸入格式:

第一行是一個正整數n表示頂點的數量,第二行是n組整數,依次表示每個頂點座標的x和y值。

輸出格式:

四個整數,依次表示所計算的矩形的左下角的座標的x、y值和右上角座標的x、y值。輸出最後帶有回車換行。

輸入樣例:

5

1 1 1 4 3 7 4 4 4 1

輸出樣例:

1 1 4 7

時間限制:500ms記憶體限制:32000kb

#include<stdio.h>
int main(void)
{ int a,b[4],i,x,y;
   scanf("%d",&a);
   scanf("%d %d %d %d",&b[0],&b[1],&b[2],&b[3]);
   for(i=0;i<a-2;i++)  
   {
         scanf("%d %d",&x,&y);
         if(x<b[0] )  b[0]=x;
         if(y<b[1] )  b[1]=y;
         if(x>b[2] )  b[2]=x;
         if(y>b[3] )  b[3]=y;
    }
   printf("%d %d %d %d\n",b[0],b[1],b[2],b[3]);
   return 0;
}

2

分數比較(10分)

題目內容:

本題要求編寫程式,比較兩個分數的大小。

輸入格式:

輸入在一行中按照“a1/b1 a2/b2”的格式給出兩個分數形式的有理數,其中分子和分母全是int類型範圍內的正整數。

輸出格式:

在一行中按照“a1/b1 關係符 a2/b2”的格式輸出兩個有理數的關係。其中“>”表示“大於”,“<”表示“小於”,“=”表示“等於”。

注意在關係符前後各有一個空格。

輸入樣例:

1/2 3/4

輸出樣例:

1/2 < 3/4

時間限制:500ms記憶體限制:32000kb

#include<stdio.h>
int main(){
	long long a1, b1, a2, b2,  m, n;
	scanf("%ld/%ld %ld/%ld", &a1, &b1, &a2, &b2);
	m = a1 * b2, n = a2 * b1;
	if(m > n) printf("%ld/%ld > %ld/%ld\n", a1, b1, a2, b2);
	else if(m == n) printf("%ld/%ld = %ld/%ld\n", a1, b1, a2, b2);
	else printf("%ld/%ld < %ld/%ld\n", a1, b1, a2, b2);
	return 0;
}