/*Description
一个笼子里关了若干鸡和兔子,鸡有2只脚,兔子有4只脚,没有例外。已知笼子里脚的
总数a,问笼子里至少有多少只动物,至多有多少只动物?
Input
第一行是测试数据的组数n,后面跟着n行输入。每组测试数据占一行,每行包含一个
正整数a(a<32768)。
Output
输出包含n行,每行对应一个输入,包含两个正整数,第一个是最少的动物数,第二个
是最多的动物数,两个正整数用一个空格分开。如果没有满足要求的答案,则输出两
个0。
Sample Input
2
3
20
Sample Output
0 0
5 10*/
#include <stdio.h>
#define N 10
int main()
{
int n,i,t,j;
scanf("%d",&n);
int a[N],b[N * 2];
for(i = 0;i < n;i++)
scanf("%d",&a[i]);
for(i = 0,j = 0;i < n;i++,j += 2)
{
if(a[i] % 2 == 0 && a[i] % 4 == 0)
{
b[j] = a[i] / 2;
b[j + 1] = a[i] / 4;
if(b[j] > b[j + 1])
{
t = b[j];
b[j] = b[j + 1];
b[j + 1] = t;
}
}
else
{
b[j] = 0;
b[j + 1] = 0;
}
}
for(i = 0;i < (2 * n);i++)
{
printf("%d ",b[i]);
if((i + 1) % 2 == 0)
printf("\n");
}
}
在使用for循环的时候,一定务必要看清循环结束之后的值。