试题描述
乐乐在幼儿园认识了长方形,回到家里立刻翻出红色、绿色、黄色……等不同颜色的N张卡纸,用每张卡纸分别剪出了一个端端正正的长方形卡片。这N个长方形长短不一。乐乐想在其中一个卡片上粘贴老师奖励的小红花,可是乐乐不知道哪张长方形卡片面积最大,可以粘贴所有的小红花。
请你定义卡片的结构体类型,内含三个数据成员:颜色、长、宽。
并将输入的N个卡片信息存入结构体数组中。然后从这N张长方形卡片中挑选出面积最大的卡片,输出其颜色信息。
假定:面积最大的卡片只有一张。
输入
输入包含N + 1行:
第一行是正整数N。
第二行到第N + 1行,每行都有如下三项,邻近两项之间用一个空格隔开。
1)一个不含空白符的卡片颜色字符串(不超过9个字符)。
2)一个int范围内的正整数(卡片长度)。
3)一个int范围内的正整数(卡片宽度)。
输出
输出面积最大的卡片的颜色。
输入示例
5
red 12 8
green 5 18
yellow 11 9
blue 7 15
white 4 24
输出示例
blue
数据范围
输入为int范围内的整数和字符串,输出为字符串,对于100%的数据,1 < N < 20
参考代码
#include<stdio.h>
#include<string.h>
struct card
{
char str[10];
int a,b;
}m[999];
int main()
{
char mstr[10];
int N,max=0;
scanf("%d",&N);
for(int i=0;i<N;i++)
{
scanf("%s%d%d",m[i].str ,&m[i].a,&m[i].b);
if(m[i].a * m[i].b > max)
{
max =m[i].a * m[i].b;
strcpy(mstr,m[i].str);
}
}
printf("%s",mstr);
return 0;
}
Code language: PHP (php)