C语言问题,帮我看下,为什么IF里的语句不执行

来源:百度知道 编辑:UC知道 时间:2024/06/18 17:15:21
#include <stdio.h>
void judge(struct Baby baby[],int n);
struct Baby
{
char name[50];
float age;
float weight;
float height;
}baby[50];
void main()
{
int i,k;
printf("请输入小孩个数\n");
scanf("%d",&k);
for(i=0;i<k;i++)
{
printf("请输入%d个小孩\n",i+1);
printf("姓名");
scanf("%s",&baby[i].name);
printf("年龄");
scanf("%f",&baby[i].age);
printf("体重");
scanf("%f",&baby[i].weight);
printf("身高");
scanf("%f",&baby[i].height);
}
judge(baby,k);
}
void judge(struct Baby baby[],int n)
{
int i,count=1;
struct Baby temp;
temp=baby[0];
for(i=1;i<n;i++)
{
if(temp.weight<baby[i].weight)
{
temp=baby[i];
count=i+1;
}
}
printf("\n第%

if(baby[i].height>1.2*(baby[i].age*5+75))
printf("&s超高\n",baby[i].name);
if(baby[i].height>0.85*(baby[i].age*5+75))
printf("&s超地\n",baby[i].name);

这里面
printf里面 用%s 而不是&s

你分明找的是最重的``...看看你的测试数据是不是有问题``