输入进货信息

​ 输入进货信息包括通过键盘录入商品数量的功能。根据实际情况,可增加已有商品数量。输入进货信息的界面如图3-3所示

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void purchase(struct product a[N])
{
int x,i,y;
printf("--------------------------------------------------------------------");
if(input==1)//判断是否可进货
{
printf("\n商品编号\t商品名称\t商品数量\t商品单价\n");
for(i=0;i<n;i++)
{
printf("%d\t\t%s\t\t%d\t\t%.2f\t\t\n",a[i].num,a[i].name,a[i].quantity,a[i].price);
}//陈列已有商品
printf("请输入进货商品编号");
scanf("%d",&x);
for(i=0;i<n;i++)
{
if(x==a[i].num)//判断是否有对应商品
{
printf("请输入进货量 ");
scanf("%d",&y);
a[i].quantity+=y;
printf("\n商品编号\t商品名称\t商品数量\t商品单价\n");
printf("%d\t\t%s\t\t%d\t\t%.2f\t\t\n",a[i].num,a[i].name,a[i].quantity,a[i].price);//完成进货后显示
return;//退出循环!!!
}
}
printf("\n\t无此编号商品!\n");
}
else printf("--------------------------------------------------------------------\n\t\t无可购买的商品信息\n");
return;
}

输入销售信息

输入销售信息包括通过键盘录入商品数量的功能。根据实际情况,可减少已有商品数量信息。

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void sale(struct product a[N])
{
int x,i,y;
printf("-----------------------------------------------------------");
if(input==0)//判断input的值来确定是否有商品
{
printf("无可销售的商品信息!\n");
return;
}
output_goods(a);
printf("请输入销售商品编号 ");
scanf("%d",&x);
for(i=0;i<n;i++)
{
if(x==a[i].num)
{
printf("请输入销售量");
scanf("%d",&y);
while(y>a[i].quantity)
{
printf("请重新输入");
scanf("%d",&y);
}
a[i].quantity-=y;
printf("\n商品编号\t商品名称\t商品数量\t商品单价\n");
printf("%d\t\t%s\t\t%d\t\t%.2f\t\t\n",a[i].num,a[i].name,a[i].quantity,a[i].price);
return;
}
}
printf("\n\t\t无可销售的商品信息\n");
return;
}

注:进货和销售类似,但可分为两种判断方式

区别在于return的使用

return的常用作用有以下两种

一种是返回参数所用的关键字,假如一个有返回值的方法执行完了之后需要返回一个参数

1
2
3
4
5
示例:
public string functionTest(){
String a = “abc”;
return a;
}

那么这个方法被调用之后就会返回一个值为abc的字符串,string result = functionTest();

第二种用法是,代码执行到此处终止。
比如当代码执行到某个地方会出现几种结果,然后其中一种结果就不能执行后续代码,这时候在那里加上一个return就可以终止后面的代码执行。