为了账号安全,请及时绑定邮箱和手机立即绑定

c语言编写input()和output()函数输入,输出5个学生的数据记录?

c语言编写input()和output()函数输入,输出5个学生的数据记录?

Go
胡子哥哥 2019-02-11 16:06:00
#include<stdio.h>struct men{int num;char *name;char sex;float score;}boy[5];void input(){int i;for(i=0;i<5;i++){printf("Input the number:\n");scanf("%d",&boy[i].num);printf("Input the name:\n");scanf("%s",boy[i].name);printf("Input the sex:\n");scanf("%c",&boy[i].sex);printf("Input the score:\n");scanf("%f",&boy[i].score);}}void getout(){int i;for(i=0;i<5;i++){printf("NUM\t\t\tNAME\t\t\tSEX\t\t\tSCORE\n\n");printf("%d\t\t\t",boy[i].num);printf("%s\t\t\t",boy[i].name);printf("%c\t\t\t",boy[i].sex);printf("%.2f\n",boy[i].score);}}main(){void input();void getout();input();getout();}小妹菜鸟,用的是tc2.0编译,结果总是报错,显示scanf:floating point formats not linked Abnormal program termination.不知哪出的问题,请高手指点一二,真的不好意思,我只有20分,全加上了,谢谢了,不行啊,四位大虾的方法额都试了,还是一到输入boy[i].sex以后就退出来了,各位再帮看看,拜托拜托,这厢有礼了^_^ 还是解决不好,是不是我太笨了呀? ~-_-~ 
查看完整描述

3 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

这是tc2.0 scanf函数的一个bug。tc2.0设计的时候,为了提高效率和节省空间,如果程序没有使用浮点计算,那么浮点运算模块是不会被加载的,但是scanf函数在检测用户浮点意图方面有些缺陷,没有能很好地检测用户的意图,因此会出现这种“错误”。
解决的办法,就是在程序中显示地出现浮点运算,但不能仅仅赋值,例如 这样
a= 1.0-1.0;

查看完整回答
反对 回复 2019-03-14
  • 3 回答
  • 0 关注
  • 2228 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信