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

使用struct函数如何做简单的超市录入商品表 ?帮忙看看哪里出问题了!

使用struct函数如何做简单的超市录入商品表 ?帮忙看看哪里出问题了!

C++ C
互换的青春 2022-05-13 15:11:52
需求当在运行时获取N种商品信息(商品名 价格 购买数量),最后显示信息(增加商品金额)#include <stdio.h>void main(){struct Shop //商品结构体{char name[10];float price;int num;float total;};struct Shop a[20];//数组a[]保存每一个商品信息int i;for(i=0;i<2;i++){printf("第%d个商品:\n",i+1);printf("品名:");scanf("%s",a[i].name);printf("价格:");scanf("%f",&a[i].price);printf("数量:");scanf("%d",&a[i].num);a[i].total=a[i].price*a[i].num;}printf("你输入的商品信息如下:\n");printf("名称\t价格\t数量\t金额\n");for(i=0;i<2;i++){printf("%s\t%.2f\t%d\t%.2f\n",a[i].name,a[i].price,a[i].num,a[i].total);}}
查看完整描述

1 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

你的问题更像是 动态数据初始化(运行时数据) VS 静态数据初始化(编译时数据) 静态数据初始化如: struct S { int i ; double d ; } ; S s = { 10, 12,76 } ; // 提前写好 在C++中动态数据的初始化通常用流来完成.流可以标准输入流(键盘),文件流,网络数据流(socket) #include #include #include using namespace std; struct Emp { char name[20] ; int age ; } ; istream& operator>>( istream& is, Emp& emp ) { is >> emp.name ; is >> emp.age ; return is ; } ostream& operator<<( ostream& os, const Emp& emp ) { cout << emp.name << " " << emp.age < endl ; return os ; } // 这是C++的方式,动态初始化一个结构,类,数组等容器. int main() { Emp e ; cin >> e ; // 从标准输入流中初始化struct Emp. 执行时输入. cout << e ; // 把struct Emp输出到命令行. Emp err[10] ;// 初始化数组结构 // 例如可以输入 Jack 28 Mark 25 Ann 12 回车 ctrl + z(结束) copy( istream_iterator( cin ), istream_iterator(), err ) ; }

查看完整回答
反对 回复 2022-05-16
  • 1 回答
  • 0 关注
  • 111 浏览

添加回答

举报

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