c语言关于float的问题
/*7_3_2*/#include"stdio.h"structrec{charitem[3];charname[3];floatunit_price;intquanti...
/*7_3_2*/
#include "stdio.h"
struct rec
{
char item[3];
char name[3];
float unit_price;
int quantity;
float total_price;
char customer_no[3];
};
main()
{
struct rec sale[1];
int i;
for(i=0;i<1;i++)
{
printf("item[3]");
scanf("%s",sale[i].item);
printf("name[3]");
scanf("%s",sale[i].name);
printf("unit_price");
scanf("%f",&sale[i].unit_price);/*到这里就运行不下去了,高手赐教。刚接触C。*/
printf("quantity");
scanf("%d",&sale[i].quantity);
printf("customer_no[3]");
scanf("%s",sale[i].customer_no);
sale[i].total_price=sale[i].unit_price*sale[i].quantity;
}
clrscr();
printf("\n\n\nitem\tname\tunit_price\tquantity\ttotal_price\tcustomer_no\n");
for(i=0;i<1;i++)
printf("%s\t%s\t%f\t\t%d\t\t%f\t%s",sale[i].item,sale[i].name,sale[i].unit_price,sale[i].quantity,sale[i].total_price,sale[i].customer_no);
}
是TC。
他的错误?
就是FLOAT在结构里无法直接键盘赋值?
二楼的。不会别说。好么? 展开
#include "stdio.h"
struct rec
{
char item[3];
char name[3];
float unit_price;
int quantity;
float total_price;
char customer_no[3];
};
main()
{
struct rec sale[1];
int i;
for(i=0;i<1;i++)
{
printf("item[3]");
scanf("%s",sale[i].item);
printf("name[3]");
scanf("%s",sale[i].name);
printf("unit_price");
scanf("%f",&sale[i].unit_price);/*到这里就运行不下去了,高手赐教。刚接触C。*/
printf("quantity");
scanf("%d",&sale[i].quantity);
printf("customer_no[3]");
scanf("%s",sale[i].customer_no);
sale[i].total_price=sale[i].unit_price*sale[i].quantity;
}
clrscr();
printf("\n\n\nitem\tname\tunit_price\tquantity\ttotal_price\tcustomer_no\n");
for(i=0;i<1;i++)
printf("%s\t%s\t%f\t\t%d\t\t%f\t%s",sale[i].item,sale[i].name,sale[i].unit_price,sale[i].quantity,sale[i].total_price,sale[i].customer_no);
}
是TC。
他的错误?
就是FLOAT在结构里无法直接键盘赋值?
二楼的。不会别说。好么? 展开
3个回答
展开全部
/*7_3_2*/
#include "stdio.h"
#include "stdlib.h"
struct rec
{
char item[3];
char name[3];
float unit_price;
int quantity;
float total_price;
char customer_no[3];
};
void main()
{
struct rec sale[1];
int i;
for(i=0;i<1;i++)
{
printf("item[3]");
scanf("%s",sale[i].item);
printf("name[3]");
scanf("%s",sale[i].name);
printf("unit_price");
scanf("%f",&sale[i].unit_price);/*到这里就运行不下去了,高手赐教。刚接触C。*/
printf("quantity");
scanf("%d",&sale[i].quantity);
printf("customer_no[3]");
scanf("%s",sale[i].customer_no);
sale[i].total_price=sale[i].unit_price*sale[i].quantity;
}
printf("\n\n\nitem\tname\tunit_price\tquantity\ttotal_price\tcustomer_no\n");
for(i=0;i<1;i++)
printf("%s\t%s\t%f\t\t%d\t\t%f\t%s",sale[i].item,sale[i].name,sale[i].unit_price,sale[i].quantity,sale[i].total_price,sale[i].customer_no);
}
item[3]01
name[3]kb
unit_price23.4
quantity2
customer_no[3]jj
item name unit_price quantity total_price customer_no
01 kb 23.400000 2 46.799999 jj请按
意键继续. . .
没什么错误啊。。。
#include "stdio.h"
#include "stdlib.h"
struct rec
{
char item[3];
char name[3];
float unit_price;
int quantity;
float total_price;
char customer_no[3];
};
void main()
{
struct rec sale[1];
int i;
for(i=0;i<1;i++)
{
printf("item[3]");
scanf("%s",sale[i].item);
printf("name[3]");
scanf("%s",sale[i].name);
printf("unit_price");
scanf("%f",&sale[i].unit_price);/*到这里就运行不下去了,高手赐教。刚接触C。*/
printf("quantity");
scanf("%d",&sale[i].quantity);
printf("customer_no[3]");
scanf("%s",sale[i].customer_no);
sale[i].total_price=sale[i].unit_price*sale[i].quantity;
}
printf("\n\n\nitem\tname\tunit_price\tquantity\ttotal_price\tcustomer_no\n");
for(i=0;i<1;i++)
printf("%s\t%s\t%f\t\t%d\t\t%f\t%s",sale[i].item,sale[i].name,sale[i].unit_price,sale[i].quantity,sale[i].total_price,sale[i].customer_no);
}
item[3]01
name[3]kb
unit_price23.4
quantity2
customer_no[3]jj
item name unit_price quantity total_price customer_no
01 kb 23.400000 2 46.799999 jj请按
意键继续. . .
没什么错误啊。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
scanf("%f",&sale[i].unit_price);/*到这里就运行不下去了,高手赐教。刚接触C。*/
如果LZ用的TC,这是TC的一个BUG,呵呵
如果LZ用的TC,这是TC的一个BUG,呵呵
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sale[i].unit_price 这个又不是指针,你加取地址运算符做什么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询