本人第一次用结构体,不知道哪里错了 ,求解答详细求帮助,谢谢。
scanf("%d\n",&n);中的\n删掉
gets前需要加getchar()接收换行符
12、16行的%d改成%f
#include <stdio.h>
struct book
{
float yuan;
char num[30];
};
int main()
{
struct book books[10],max,min;
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
getchar();
gets(books[i].num);
scanf("%f",&books[i].yuan);
if(i==0)
max = min = books[0];
else if(max.yuan < books[i].yuan)
max = books[i];
else if(min.yuan > books[i].yuan)
min = books[i];
}
printf("%.2f,%s\n%.2f,%s",max.yuan,max.num,min.yuan,min.num);
return 0;
}