c语言结构体学生成绩问题

五名学生的学号和成绩 找出成绩最低的 为什么最后输出的时候成绩一直是0???
#include <stdio.h>
struct student
{
int data;
float score;
}s[5];
int main() {
struct student s[5];
int i, j, k = 0;
for (i = 0; i < 5; i++) {
scanf_s("%d %f", &s[i].data, &s[i].score);
}
for (i = 0; i < 5; i++) {
if (s[i].score < s[k].score)
k = i;
}
printf("%d-%d", s[k].data, s[k].score);
return 0;
}

img

img

代码最后一个printf函数中输出成绩的格式符号应该是f。而你写成了d,就是这个错误。