gpt4 book ai didi

c - Scanf 未按预期运行

转载 作者:太空宇宙 更新时间:2023-11-04 08:25:56 24 4
gpt4 key购买 nike

我正在尝试使用 scanf() 将值输入到使用指针的结构中。你能帮我理解为什么我的代码不起作用

这是我的代码:

#include<stdio.h>
struct student
{
int no;
float marks;
}st[2],*s;

main()
{
printf("enter the values");
for(s=st;s<st+2;s++)
{
scanf("%d%d",&s->no,&s->marks);
}
for(s=st;s<st+2;s++)
{
printff("%d\t%d\t",s->no,s->marks);
}
}

在此代码中,scanf 无法正常工作,它只取第一个值

最佳答案

您使用了错误的格式说明符。 %d 用于int,而%f 用于float。使用

scanf("%d%f",&s->no,&s->marks);

printf("%d\t%f\t",s->no,s->marks);

因为s->marksfloat,而不是int。使用错误的格式说明符会导致未定义的行为。

关于c - Scanf 未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30450968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com