求救。关于结构的问题。

yechun 2001-11-24 04:44:54
有一个题目,定义一个结构变量。包括工号和工资。逐个输入若干工号和工资。输入工号为零时为输入结束。
输出每个工号和工资。
我编写的好像运行以后有问题。输入0程序是结束了。可是显示的东西却不正确。连我输入零的工号。也给显示出来了。
#include <stdio.h>
main()
{
struct p
{
int gonhao;
float gongzi;
};
int i;
struct p a[3];
for(i=0;i<3;i++)
{
scanf("%d,%f",&a[i].gonhao,&a[i].gongzi);
if (a[i].gonhao==0)
break;
}
for(i=0;i<3;i++)
printf("%d ,%f\n",a[i].gonhao,a[i].gongzi);
}
...全文
91 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yechun 2001-11-24
  • 打赏
  • 举报
回复
c++里面就方便多了。
yechun 2001-11-24
  • 打赏
  • 举报
回复
谢谢各位。给分了。
yechun 2001-11-24
  • 打赏
  • 举报
回复
不好意思。
scanf("%d,%f",&a[i].gonhao,&a[i].gongzi);
和scanf("%d%f",&a[i].gonhao,&a[i].gongzi);
有什么区别啊。
一个是输入的时候 25,25.6 而另一个是 25 25.6
flashman 2001-11-24
  • 打赏
  • 举报
回复
对,new_cooperator 说法很对,你应该注意
new_cooperator 2001-11-24
  • 打赏
  • 举报
回复
要注意你的输入方法
new_cooperator 2001-11-24
  • 打赏
  • 举报
回复
scanf("%d,%f",&a[i].gonhao,&a[i].gongzi);
改为:scanf("%d%f",&a[i].gonhao,&a[i].gongzi);

flashman 2001-11-24
  • 打赏
  • 举报
回复
#include <stdio.h>
main()
{
struct p // 你应该把结构定义为全局变量;
{
int gonhao;
float gongzi;
};
int i;
struct p a[3];
for(i=0;i<3;i++)
{
scanf("%d,%f",&a[i].gonhao,&a[i].gongzi);
if (a[i].gonhao==0) //这本来就说明a[i].gonhao等于 0了;当然会显示;
break;
}
for(i=0;i<3;i++)
printf("%d ,%f\n",a[i].gonhao,a[i].gongzi);
}

改为
#include <stdio.h>

struct p
{
int gonhao;
float gongzi;
};
main()
{

int i;
struct p a[3];
for(i=0;i<3;i++)
{
scanf("%d,%f",&a[i].gonhao,&a[i].gongzi);
if (a[i].gonhao==0)
break;
}
for(i=0;i<3;i++)
{
if (a[i].gonhao==0)
break;
printf("%d ,%f\n",a[i].gonhao,a[i].gongzi);
}

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧