菜鸟级c语言程序问题求救

来源:百度知道 编辑:UC知道 时间:2024/06/20 15:08:10
初学c语言,按书上的写的代码,问题是:运行后开始输入数字,输入到第3个的时候就自动退出,但是要求是输入5个的,下面是代码,麻烦高手帮帮忙,谢谢了
#include<stdio.h>
main()
{ int bh; //编号
int gl; //工龄
float gz; //基本工资
float yd; //月工作天数
float bx; //保险金
float sx; //薪水
printf("---------------------------------------\n");
printf(" 软件测试工程师管理系统\n");
printf("---------------------------------------\n");
printf("1.输入软件测试工程师资料\n");
printf("2.删除指定测试工程师资料\n");
printf("3.查询软件测试工程师资料\n");
printf("4.修改软件测试工程师资料\n");
printf("5.计算测试工程师的月薪水\n");
printf("6.保存新添加的工程师资料\n");
printf("7.对测试工程师信息排序(1编号升序,2姓名升序,3工龄降序)\n");
printf("8.输出所有测试工程师信息\n");
printf("9.清空所有测试工程师数据\n");
printf("10.打印测试工程师数据报表\n");
printf("11.从文件重新导入测试工程师数据\n");
printf("0.结束(编辑工程师

想到了想到了!哈

输入的时候用%f就好了 不要用%7.2f 一般是输出时候为了格式统一才控制格式用%m.n 你改下试试!
//sx=(gz+10*yd+100*gl/100)*0.9-bx;
//printf("该员工的薪水是:%f\n,sx");

这两句不应该要//吧 又不是注释!

scanf("%d%d%7.2f%3.2f%7.2f\n",&bh,&gl,&gz,&yd,&bx);

scanf("%d%d%7.2f%f3.2%%7.2f\n",&bh,&gl,&gz,&yd,&bx);

应该是你没按要求输入数字,第三个数字格式是%7.2f这样写是有问题的,规定了输入的小数格式,不容易输入,一般输入不这样写,输出才会规定输出格式,直接%f就可以了,后面的也是一样。当然如果输入格式对应该还是会出来的。还有,最后两句前面的//要去掉,否则//后的内容都被注释掉了,输入时输完一个数要按空格区分,全部输完再按回车。

scanf()不能用格式控制符的吧(%3.2f之类的??)