这个是题目
#include
struct yuan
{
char name[11];
double a,b,c;
double y;
};
int main()
{
int n,i;
scanf("%d",&n);
struct yuan s[n];
for(i=0;iscanf("%s %lf %lf %lf",s[i].name,&s[i].a,s[i].b,s[i].c);
s[i].y=s[i].a+s[i].b-s[i].c;
}
for(i=0;iprintf("%s %.2lf\n",s[i].name,s[i].y);
}
return 0;
}
提交的时候显示段错误 请问我是哪里写错了啊?谢谢
#include<stdio.h>
struct yuan
{
char name[11];
double a,b,c;
double y;
};
int main()
{
int n,i;
scanf("%d",&n);
struct yuan s[n];
for(i=0;i<n;i++)
{
scanf("%s %lf %lf %lf",s[i].name,&s[i].a,&s[i].b,&s[i].c);
s[i].y=s[i].a+s[i].b-s[i].c;
}
for(i=0;i<n;i++)
{
printf("%s %.2lf\n",s[i].name,s[i].y);
}
return 0;
}
没有写&符号,望采纳
以下答案引用自GPT-3大模型,请合理使用:
应该是这一段出错了:
scanf("%s %lf %lf %lf",s[i].name,&s[i].a,s[i].b,s[i].c);
上面这段代码中,scanf输入的参数应该是:
scanf("%s %lf %lf %lf",s[i].name,&s[i].a, &s[i].b, &s[i].c);
要将s[i].b和s[i].c前面的&去掉。
如果我的回答解决了您的问题,请采纳我的回答
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!