C编程结构

Asa*_*sap 0 c struct

#include<stdio.h>
#include<string.h>

struct s {
    char ch[20];
    float a;
};

int main()
{
    struct s p[10];
    int i;
    for(i=0;i<10;i++)
    {
        scanf("%s%f",p[i].ch,p[i].a);
    }
}
Run Code Online (Sandbox Code Playgroud)

这段代码有什么问题?

它给出了运行时错误.

有什么问题?

Did*_*set 7

大多数错误都来自这条线.

scanf("%s%f",p[i].ch,p[i].a);
Run Code Online (Sandbox Code Playgroud)

您应该使用地址p[i].a,并限制要写入的字符数p[i].ch.

scanf( "%19s%f", p[i].ch, &p[i].a );
Run Code Online (Sandbox Code Playgroud)