for循环输入结构体失效

for循环失效
运行结果及报错内容
题目内容:专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。

下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。

输入格式:
输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。

输出格式:
对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。

想知道为啥for循环在输入n=2时for循环无法正常工作且打印时也只能打印一个
#include
struct str
{
    char a;
    float b;
};
int main()
{   
    struct str arr[11];
    int n=0;
    scanf("%d",&n);
    for(int i=0;iscanf("%c%f",&arr[i].a,&arr[i].b);
    }
    
    for(int j=0;jif(arr[j].a=='F')
            printf("%.2f\n",arr[j].b*1.09);        
        if(arr[j].a=='M')
            printf("%.2f\n",arr[j].b/1.09);
    }
}

建议在这个位置输出一下arr数组,看看是不是数据错了