前言
你是一所公司的程序员,公司新进了两批货需要销售,老板要你写一个关于这两批货物的销售程序
需求
老板:
首先,这两批货名字分别叫 书空 和 边城,价格嘛,跟随着市场价格浮动而浮动,比如说现在书空的价格就是1233元每件,而边城嘛,就是2564元每件了,然后,我们的客户都是一些大客户,他们订购的单量是非常大的,所以我们要给他们优惠,优惠福利就是这样子的,只要订单量到达200件,那我们就对于超过200件商品的打八折。
当然了,老板可能确实会很亏嘛,但是不管怎么样,你都得写,那首先,作为公司里的前辈,一位使用C语言的程序员就跟你说,他已经有思路了,接下来只见他在键盘上噼里啪啦一顿点,他的程序就出来了
代码
#include<stdio.h>
int main(){
int shukong_price = 1233; // 书空的价格
int biancheng_price = 2564;
int shukong_count; // 书空的数量
int biancheng_count = 0;
float shukong_perferential = 0; // 书空的优惠价格
float biancheng_perferential = 0;
double shukong_cost = shukong_price * shukong_count - shukong_perferential; // 书空的需要支付的钱
double biancheng_cost = biancheng_price * biancheng_count - biancheng_perferential;
double cost = biancheng_cost + shukong_cost; // 总共需要支付的钱
printf("请输入要购买的书空的数量:\n");
scanf("%d",&shukong_count);
if (shukong_count > 200){
// 计算是否能够优惠
shukong_perferential = shukong_price * (shukong_count - 200) * 0.8;
printf("因为您订单量超过了200,您的优惠价格为:%f",shukong_perferential);
printf("\n");
}
shukong_cost = shukong_price * shukong_count - shukong_perferential;
printf("书空的总价格是:%lf",shukong_cost);
printf("\n");
printf("请输入要购买的边城的数量:\n");
scanf("%d",&biancheng_count);
if (biancheng_count > 200){
biancheng_perferential = biancheng_price * (biancheng_count - 200) * 0.8;
printf("因为您订单量超过了200,您的优惠价格为:%f",biancheng_perferential);
printf("\n");
}
biancheng_cost = biancheng_price * biancheng_count - biancheng_perferential;
printf("边城的总价格是:%lf",biancheng_cost);
printf("\n");
cost = biancheng_cost + shukong_cost;
printf("您需要支付%lf元",cost);
}
这是旁边的运营小姐姐走过来看到后,来了一句,可是这样堆在一起也太丑了吧,不利于代码的维护呀。
这时前辈说,说的对啊,反手就修改了代码
#include<stdio.h>
float perferential(int count,int price);
int main(){
int shukong_price = 1233; // 书空的价格
int biancheng_price = 2564;
int shukong_count; // 书空的数量
int biancheng_count = 0;
float shukong_perferential; // 书空的优惠价格
float biancheng_perferential;
double shukong_cost = shukong_price * shukong_count - shukong_perferential; // 书空的需要支付的钱
double biancheng_cost = biancheng_price * biancheng_count - biancheng_perferential;
double cost = biancheng_cost + shukong_cost; // 总共需要支付的钱
printf("请输入要购买的书空的数量:\n");
scanf("%d",&shukong_count);
shukong_perferential = perferential(shukong_count,shukong_price);
shukong_cost = shukong_price * shukong_count - shukong_perferential;
printf("书空的总价格是:%.2lf",shukong_cost);
printf("\n");
printf("请输入要购买的边城的数量:\n");
scanf("%d",&biancheng_count);
biancheng_perferential = perferential(biancheng_count,biancheng_price);
biancheng_cost = biancheng_price * biancheng_count - biancheng_perferential;
printf("边城的总价格是:%.2lf",biancheng_cost);
printf("\n");
cost = biancheng_cost + shukong_cost;
printf("您需要支付%.2lf元",cost);
}
float perferential(int count,int price){
// 判断是否达到优惠数量,如果达到了就返回优惠的价格
float perferential_cost;
if (count > 200){
perferential_cost = price * (count - 200) * 0.8;
printf("因为您订单量超过了200,您的优惠价格为:%.2f",perferential_cost);
printf("\n");
} else {
printf("如果您订单量达到200,200以上的商品可享受八折优惠哦!");
}
return perferential_cost;
}
这时候运营小姐姐一看,那看起来还真的是不错呢,你一想,不行,我也得写一个
import java.util.Scanner;
public class test{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
goods shukong = new goods("书空"); // 初始化 书空 商品
shukong.price = 1233; // 设定 书空 单价
goods biancheng = new goods("边城");
biancheng.price = 2564;
System.out.print(shukong.name + "的购买数量是:");
shukong.set_count(scan.nextInt()); // 用户输入购买数量
shukong.set_perferential(perferential(shukong.get_count(),shukong.price)); // 计算优惠价格
System.out.println("书空的价格是:" + String.format("%.2f",shukong.get_cost())); // 打印输出价格
System.out.print(biancheng.name + "的购买数量是:");
biancheng.set_count(scan.nextInt());
biancheng.set_perferential(perferential(biancheng.get_count(),biancheng.price));
System.out.println("边城的价格是:" + String.format("%.2f",biancheng.get_cost()));
System.out.println("您总共需要支付的价格是:" + String.format("%.2f",(shukong.get_cost() + biancheng.get_cost())));
scan.close();
}
static float perferential(int count,int price){
// 判断是否达到优惠数量,如果达到了就返回优惠的价格
float perferential_cost = 0;
if (count > 200){
perferential_cost = price * (count - 200) * 0.8f;
System.out.println("因为您订单量超过了200,您的优惠价格为:"+ perferential_cost);
} else {
System.out.println("如果您订单量达到200,200以上的商品可享受八折优惠哦!");
}
return perferential_cost;
}
}
class goods{
// 商品类
String name = new String(); // 名字
int price; // 价格
private int count; // 数量
private float perferential; // 优惠价格
double cost = price * count - perferential; // 需要支付的钱
goods(String name){
// 构造函数,初始化商品名
this.name = name;
}
void set_count(int count){
// 设定商品数量
this.count = count;
}
int get_count(){
// 返回商品数量
return count;
}
void set_perferential(float perferential){
// 设定优惠价格
this.perferential = perferential;
}
float get_perferential(){
// 返回优惠价格
return perferential;
}
double get_cost(){
// 返回需要支付的钱
cost = this.price * get_count() - get_perferential();
return cost;
}
}
你的代码写出来了,但运营小姐姐看到了之后,表示,代码行数太多了,而且好多花里胡哨的方法,看起来真麻烦,不如前辈的,看起来很符合运行软件时候的逻辑。
第一回 完
结语
首先呢,这篇文章,或者说叫这一系列文章是为了做一个C和Java之间的思路对比的,但我可能并不能做得很好,因为C语言学习时间是比较短的,也没有经历过系统性的学习,这一次写也是通过翻阅了大量的资料,凭借着记忆勉强完成,所以说代码水平可能并不能反映前辈的代码水平,哈哈,虽然说两个人都是我了,但不管怎么样,还是能看出一个思路的不同的,不过两个语言其实都可以用对方的思路去实现自己想要的功能的喔。
其次,以下是给俱乐部的成员看的了,大家就按着已经写出来的代码照着抄写一遍,一遍两遍的抄写,这样子就能加快理解的进度了,如果不懂其实可以去百度啦
最后,下一回老板就发布了新的需求,而新的需求的出现也让事情朝着意外的方向发展了
PS.怎么感觉写成了小说....