加入购物车的代码(购物车功能的实现代码)
admin 发布:2022-12-19 21:37 137
本篇文章给大家谈谈加入购物车的代码,以及购物车功能的实现代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
怎样将图书加入购物车的代码c语言
#include#include#include#include#defineMax2typedefstructbook//书的信息{charbook_num[10];//书号charbook_name[20];//书名charbook_writer[10];//作者intbook_xy;//书的剩余数量intbook_kc;//书的总数量structbook*next;}BK;typedefstructborrow//被借书的信息{charborrow_book_num[10];//借书书号charlimit_date[8];//借书归还日期}BO;typedefstructreader//读者信息{charreader_num[10];//读者号charreader_name[10];//读者姓名intright;//已借数量BOborrow[Max];//已借书信息structreader*next;}RD;BK*h_book;RD*h_reader;voidLogin();intMenu();voidInit();voidInit_book();voidMenu_select();voidInsert_New_Book();voidFind_Book();voidadd_reader();voidPrint_reader();voidPrint_book();voidBorrow_Book();voidReturn_Book();voidSave();voidSave_Book();voidSave_Reader();voidLoad();voidLoad_Reader();voidLoad_Book();voidLogin(){system("cls");printf("\n\n\n\t\t\t欢迎使用图书管理系统\n");printf("\n\n\t\t本程序分析者秦义学号:200907014122\n\n\n\n\n\n\n");//以前是设计者xxxxprintf("\n\n\n\t\t按任意键进入系统");getch();system("cls");}intMenu()/*主菜单*/{intdm;printf("\n\t\t图书管理系统主菜单\n");printf("=================================================\n");printf("☆\t0----退出系统☆\n");printf("☆\t1----采编入库☆\n");printf("☆\t2----登记读者☆\n");printf("☆\t3----借阅登记☆\n");printf("☆\t4---还书管理☆\n");printf("☆\t5---查询图书信息☆\n");printf("☆\t6----查询读者信息☆\n");printf("=================================================\n");printf("请选择相应的代码:");for(;;){scanf("%d",dm);if(dm6)printf("\n错误!请重新输入:");elsebreak;}returndm;}voidMenu_select()/*主菜单选择函数*/{for(;;){switch(Menu())/*功能选择*/{case0:system("cls");Save();printf("\n\n\t文件保存成功!\n");printf("\n\n\t欢迎下次使用本系统!\n");getch();exit(0);case1:Insert_New_Book();break;case2:add_reader();break;case3:Borrow_Book();break;case4:Return_Book();break;case5:Print_book();break;case6:Print_reader();break;default:printf("\n错误!");exit(0);}}}voidInit()/*初始化*/{Init_book();}voidInit_book()/*初始化图书信息*/{BK*p0;printf("\n图书初始化开始,请输入图书信息..\n包括编号.书名.数量..\n");p0=(BK*)malloc(sizeof(BK));h_book=p0;printf("\n请输入图书信息:\n");printf("图书编号:");/*输入图书编号(唯一)*/scanf("%s",p0-book_num);printf("图书名称:");/*输入图书名称*/scanf("%s",p0-book_name);printf("图书作者:");/*输入图书作者*/scanf("%s",p0-book_writer);printf("图书数量:");/*输入图书数量*/scanf("%d",p0-book_kc);p0-book_xy=p0-book_kc;/*开始时图书现有量和库存量相等*/p0-next=NULL;printf("\n图书信息初始化完毕!按任意键继续下一步操作..\n");getch();system("cls");}voidInsert_New_Book()/*新书入库*/{BK*p,*p0,*p1;p=p1=h_book;printf("\n新书入库模块\n");printf("\n请输入新书信息..\n包括书号.书名.数量..\n");p0=(BK*)malloc(sizeof(BK));printf("图书编号:");scanf("%s",p0-book_num);while(strcmp(p0-book_num,p1-book_num)!=0p1-next!=NULL)p1=p1-next;if(strcmp(p0-book_num,p1-book_num)==0)/*此处分两种情况,若图书编号存在,则直接进库,只须输入书的数量*/{printf("\n此编号图书已存在!!直接入库!\n");printf("图书数量:");scanf("%d",p0-book_kc);p1-book_kc+=p0-book_kc;p1-book_xy+=p0-book_kc;}else/*若不存在,则需要输入其他的信息,然后在进行插入操作*/{printf("图书名称:");scanf("%s",p0-book_name);printf("图书作者:");scanf("%s",p0-book_writer);printf("图书数量:");scanf("%d",p0-book_kc);while(p-next){p=p-next;}if(h_book==NULL)h_book=p0;/*此处分两种情况,链表中没有数据,head直接指向p0处*/elsep-next=p0;/*此处分两种情况,链表中有数据,链表中最后元素的next指向p0处*/p0-next=NULL;p0-book_xy=p0-book_kc;}printf("\n新书入库完毕!按任意键继续下一步操作..\n");getch();system("cls");}voidadd_reader()/*添加读者*/{RD*p0;inti;printf("\n读者初始化开始,请输入读者信息..\n包括书证号.姓名..\n");p0=(RD*)malloc(sizeof(RD));/*申请新结点存储空间*/h_reader=p0;printf("\n请输入读者的信息:\n");printf("读者书证号:");scanf("%s",p0-reader_num);printf("读者姓名:");scanf("%s",p0-reader_name);p0-right=0;for(i=0;iborrow[i].borrow_book_num,"0");/*所借图书直接置为0(即没有借书)*/strcpy(p0-borrow[i].limit_date,"0");}p0-next=NULL;printf("\n读者信息初始化完毕!按任意键继续下一步操作..\n");getch();system("cls");}voidBorrow_Book()/*借书模块*/{BK*p0;RD*p1;charbo_num[10],rea_num[10],lim_date[8];inti;p0=h_book;p1=h_reader;printf("\n借书模块\n");printf("\n请输入借书的读者书证号:");scanf("%s",rea_num);while(p1-next!=NULLstrcmp(rea_num,p1-reader_num)!=0)//查找读者号{p1=p1-next;}if(p1-next==NULLstrcmp(rea_num,p1-reader_num)!=0){printf("\n此读者编号不存在!按任意键返回..\n");gotoEND;}printf("\n请输入你要借的书的编号:");scanf("%s",bo_num);while(strcmp(bo_num,p0-book_num)!=0p0-next!=NULL)//查找书号{p0=p0-next;}if(p0-next==NULLstrcmp(bo_num,p0-book_num)!=0){printf("\n此图书编号不存在!按任意键返回..\n");}elseif(p0-book_xyright=Max){printf("\n不好意思,借书数目已满!不能借书!\n按任意键返回.");}elseif(strcmp(p1-borrow[0].borrow_book_num,"0")!=0){for(i=0;iborrow[i].borrow_book_num,bo_num)==0){printf("\n抱歉!同一个读者不能同借两本相同的书!\n");}elseif(strcmp(p1-borrow[i].borrow_book_num,"0")==0){printf("\n请输入你要归还图书的日期:");scanf("%s",lim_date);strcpy(p1-borrow[p1-right++].borrow_book_num,bo_num);strcpy(p1-borrow[p1-right-1].limit_date,lim_date);p0-book_xy--;printf("\n读者编号%s借书完毕!按任意键继续下步操作..",p1-reader_num);}}}else{printf("\n请输入你要归还图书的日期:");scanf("%s",lim_date);strcpy(p1-borrow[p1-right++].borrow_book_num,bo_num);strcpy(p1-borrow[p1-right-1].limit_date,lim_date);p0-book_xy--;printf("\n读者编号%s借书完毕!按任意键继续下步操作..",p1-reader_num);}END:getch();system("cls");}voidReturn_Book()/*还书模块*/{BK*p;RD*q;inti,j,find=0;charreturn_book_num[10],return_reader_num[10];p=h_book;q=h_reader;printf("\n还书模块\n");printf("\n请输入要还书的读者编号:");scanf("%s",return_reader_num);while(q-next!=NULLstrcmp(return_reader_num,q-reader_num)!=0)q=q-next;if(q-next==NULLstrcmp(return_reader_num,q-reader_num)!=0){find=2;printf("\n此读者编号不存在!按任意键返回..\n");gotoend;}printf("\n请输入读者还书的编号:");scanf("%s",return_book_num);while(p-next!=NULLstrcmp(return_book_num,p-book_num)!=0)p=p-next;if(p-next==NULLstrcmp(return_book_num,p-book_num)!=0){find=2;printf("\n错误!此图书编号不存在!按任意键返回..\n");gotoend;}for(i=0;iborrow[i].borrow_book_num)==0)/*如果此读者借了此书*/{find=1;for(j=i;jborrow[j].borrow_book_num,q-borrow[j+1].borrow_book_num);strcpy(q-borrow[j].limit_date,q-borrow[j+1].limit_date);}strcpy(q-borrow[Max-1].borrow_book_num,"0");strcpy(q-borrow[Max-1].limit_date,"0");p-book_xy++;q-right--;printf("\n编号%s的读者还书完毕!按任意键继续下步操作..",return_reader_num);}if(find==0)printf("\n错误!此读者未借此书!按任意键返回..\n");end:getch();system("cls");}voidPrint_book()/*查询图书信息*/{BK*p;p=h_book;printf("\n图书信息如下:\n\n");printf("图书编号\t图书名称\t图书作者\t现有\t\t库存\n");while(p!=NULL){printf("%s\t\t%s\t\t%s\t\t%d\t\t%d\n",p-book_num,p-book_name,p-book_writer,p-book_xy,p-book_kc);p=p-next;}printf("\n图书信息打印完毕!按任意键继续下一步操作..");getch();system("cls");}voidPrint_reader()/*查询读者信息*/{RD*p;inti;p=h_reader;printf("\n读者信息如下:\n\n");printf("读者书证号\t\t读者姓名\n");printf("\n");while(p!=NULL){printf("\t%s\t\t%s",p-reader_num,p-reader_name);for(i=0;iborrow[i].borrow_book_num);printf("\t\t%s",p-borrow[i].limit_date);}printf("\n");p=p-next;}printf("\n读者信息打印完毕!按任意键继续下一步操作..");getch();system("cls");}//文件模块voidSave()/*保存信息*/{Save_Reader();Save_Book();}voidSave_Reader()/*保存读者信息*/{FILE*fp_reader;RD*p,*p0;p=h_reader;if((fp_reader=fopen("Reader.txt","wb"))==NULL)/*创建文件,进行保存*/{printf("\n文件保存失败!\n请重新启动本系统\n");exit(0);}while(p!=NULL){if(fwrite(p,sizeof(RD),1,fp_reader)!=1)/*将链表中的信息写入文件中*/printf("\n写入文件失败!\n请重新启动本系统!\n");p0=p;p=p-next;free(p0);/*释放所有结点*/}h_reader=NULL;fclose(fp_reader);/*关闭文件*/}voidSave_Book()/*保存图书信息*/{FILE*fp_book;/*创建文件型指针*/BK*p,*p0;p=h_book;if((fp_book=fopen("Book.txt","wb"))==NULL)/*创建文件,进行保存*/{printf("\n文件保存失败!\n请重新启动本系统\n");exit(0);}while(p!=NULL){if(fwrite(p,sizeof(BK),1,fp_book)!=1)/*将链表中的信息写入文件中*/printf("\n写入文件失败!\n请重新启动本系统!\n");p0=p;p=p-next;free(p0);}h_book=NULL;fclose(fp_book);/*关闭文件*/}voidLoad()/*加载信息*/{Load_Reader();Load_Book();}voidLoad_Reader()/*加载读者信息*/{RD*p1,*p2,*p3;FILE*fp;/*创建文件型指针*/fp=fopen("book.txt","rb");/*打开文件*/p1=(RD*)malloc(sizeof(RD));fread(p1,sizeof(RD),1,fp);h_reader=p3=p2=p1;while(!feof(fp))/*读出信息,重新链入链表*/{p1=(RD*)malloc(sizeof(RD));fread(p1,sizeof(RD),1,fp);p2-next=p1;p3=p2;p2=p1;}p3-next=NULL;free(p1);fclose(fp);/*关闭文件*/}voidLoad_Book()/*加载图书信息*/{BK*p1,*p2,*p3;FILE*fp;/*创建文件型指针*/fp=fopen("Book.txt","rb");/*打开文件*/p1=(BK*)malloc(sizeof(BK));fread(p1,sizeof(BK),1,fp);h_book=p3=p2=p1;while(!feof(fp))/*读出信息,重新链入链表*/{p1=(BK*)malloc(sizeof(BK));fread(p1,sizeof(BK),1,fp);p2-next=p1;p3=p2;p2=p1;}p3-next=NULL;free(p1);fclose(fp);/*关闭文件*/}voidmain(){FILE*fp_book,*fp_reader;/*创建文件型指针*/Login();if((fp_book=fopen("Book.txt","rb"))==NULL||(fp_reader=fopen("Reader.txt","rb"))==NULL){Init();}elseLoad();Menu_select();/*调用主菜单*/}
求PHP里的TP5的购物车代码
可以参考如下代码
?php
class Cart extends Think {
//当前购物车名
public $sessionName;
//购物车总价格
public $totalPrice
public function __construct($sessionName)
{
$this-sessionName=$sessionName;
if(!isset($_SESSION[$this-sessionName]))
{
$_SESSION[$this-sessionName]="";
}
}
//获取购物车的信息
public function getCart(){
$cur_cart_array=$_SESSION[$this-sessionName];
return $cur_cart_array;
}
//获取购物车商品清单
public function getCartList()
{
$cur_cart_array=$_SESSION[$this-sessionName];
if($cur_cart_array!="")
{
$mode_goods_data=M("goods_data");
$len=count($cur_cart_array);
for($i=0;$i$len;$i++)
{
$goodsid=$cur_cart_array[$i]["id"];
$num=$cur_cart_array[$i]["num"];
$query="select (select sfilename from goods_pic where goodsid=a.goodsid order by sno desc limit 0,1) as sfilename,b.clsname as clsname,a.goodsid as goodsid,a.goodsname as goodsname,a.Price as Price,a.Storageqty as Storageqty from goods_data a left join goods_cls b on a.Clsid=b.clsid where a.goodsid=$goodsid";
$list=$mode_goods_data-query($query);
$list[0]["qty"]=$num;
$list[0]["amount"]=$num*$list[0]["Price"];
$cartList[$i]=$list[0];
$totalPrice+=$list[0]["amount"];
}
//返回商品总价格
$this-totalPrice=$totalPrice;
return $cartList;
}
}
//加入购物车,购物车的商品id和购物车的商品数量
public function addcart($goods_id,$goods_num){
$cur_cart_array=$_SESSION[$this-sessionName];
if($cur_cart_array=="")
{
$cart_info[0]["id"]=$goods_id;//商品id保存到二维数组中
$cart_info[0]["num"]=$goods_num;//商品数量保存到二维数组中
$_SESSION[$this-sessionName]=$cart_info;
}
else
{
//返回数组键名倒序取最大
$ar_keys=array_keys($cur_cart_array);
$len=count($ar_keys);
$max_array_keyid=$ar_keys[$len-1]+1;
//遍历当前的购物车数组
//遍历每个商品信息数组的0值,如果键值为0且货号相同则购物车该商品已经添加
$is_exist=$this-isexist($goods_id,$goods_num,$cur_cart_array);
if($is_exist==false)
{
$cur_cart_array[$max_array_keyid]["id"] = $goods_id;
$cur_cart_array[$max_array_keyid]["num"] = $goods_num;
$_SESSION[$this-sessionName]=$cur_cart_array;
}
else
{
$arr_exist=explode("/",$is_exist);
$id=$arr_exist[0];
$num=$arr_exist[1];
$cur_cart_array[$id]["num"]=$num;
$_SESSION[$this-sessionName]=$cur_cart_array;
}
}
}
//判断购物车是否存在相同商品
public function isexist($id,$num,$array)
{
$isexist=false;
foreach($array as $key1=$value)
{
foreach($value as $key=$arrayid)
{
if($key=="id" $arrayid==$id)
{
$num=$value["num"]+$num;
$isexist=$key1."/".$num;
}
}
}
return $isexist;
}
thinkphp开发使得我们比较容易的去进行了
//从购物车删除
public function delcart($goods_array_id){
//回复序列化的数组
$cur_goods_array=$_SESSION[$this-sessionName];
//删除该商品在数组中的位置
unset($cur_goods_array[$goods_array_id]);
$_SESSION[$this-sessionName]=$cur_cart_array;
//使数组序列化完整的保存到cookie中
}
//清空购物车
public function emptycart(){
$_SESSION[$this-sessionName]="";
}
//修改购物车货品数量
public function update_cart($up_id,$up_num){
//回复序列化的数组
$cur_goods_array=$_SESSION[$this-sessionName];
$cur_goods_array[$up_id]["num"]=$up_num;
$_SESSION[$this-sessionName]=$cur_cart_array;
}
}
?
急求java购物车代码
package bean;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author Administrator
* 购物车类:
* 为了方便将商品信息绑订到session上面而设计的一个
* 工具,提供了商品的添加,删除,列表,计价,清空,
* 修改功能。
*/
public class Cart {
//items属性:用来保存商品
private ListCartItem items =
new ArrayListCartItem();
/**
* 将商品添加到购物车
*/
public boolean add(CartItem item){
for(int i=0;iitems.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == item.getC().getId()){
//该商品已经购买过
return false;
}
}
//没有购买过,则添加该商品
items.add(item);
return true;
}
/**
* 从购物车当中删除某件商品
*/
public void delete(int id){
for(int i=0;iitems.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == id){
items.remove(curr);
return;
}
}
}
/**
* 获得购物车中所有商品信息
*/
public ListCartItem list(){
return items;
}
/**
* 商品总价
*/
public double cost(){
double total = 0;
for(int i=0;iitems.size();i++){
CartItem curr = items.get(i);
total += curr.getC().getPrice() * curr.getQty();
}
return total;
}
/**
* 清空购物车中的所有商品
*/
public void clear(){
items.clear();
}
/**
* 修改购物车中某种商品的数量
*/
public void modify(int id,int qty){
for(int i=0;iitems.size();i++){
CartItem curr = items.get(i);
if(curr.getC().getId() == id){
curr.setQty(qty);
return;
}
}
}
}
java简单的购物车代码
package Test;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
init();//初始化
MapString,String map = new LinkedHashMap();
while(true){
Scanner in= new Scanner(System.in);
map = buy(in,map);//选择
System.out.println();
System.out.println("还要继续购物吗?(Y/N)");
String jx = in.nextLine();
if(jx.equals("N")){
break;
}
}
print(map);
}
public static void print(MapString, String m){
System.out.println("\n\n\n******************");
System.out.println(" 购物车清单");
Integer hj = 0;
for (EntryString, String entry : m.entrySet()) {
String key = entry.getKey();
String value = entry.getValue();
if(key.equals("1")){
hj += Integer.parseInt(value)*3;
System.out.println("哇哈哈纯净水: "+value+"件,合计:¥"+Integer.parseInt(value)*3);
}else if(key.equals("2")){
hj += Integer.parseInt(value)*5;
System.out.println("康师傅方便面: "+value+"件,合计:¥"+Integer.parseInt(value)*5);
}else if(key.equals("3")){
hj += Integer.parseInt(value)*4;
System.out.println("可口可乐: "+value+"件,合计:¥"+Integer.parseInt(value)*4);
}
}
System.out.println("合计金额:¥"+hj);
}
public static void init(){
System.out.println("******************");
System.out.println("\t商品列表\n");
System.out.println(" 商品名称 价格");
System.out.println("1. 哇哈哈纯净水 ¥3");
System.out.println("2. 康师傅方便面 ¥5");
System.out.println("3. 可口可乐 ¥4");
System.out.println("******************");
}
public static MapString,String buy(Scanner scan,MapString,String m){
System.out.print("请输入编号:");
String bh = scan.nextLine();
System.out.print("请输入购买数量:");
String num = scan.nextLine();
if(m.size()0 m.keySet().contains(bh)){
m.put(bh,(Integer.parseInt(bh)+Integer.parseInt(num))+"");
}else{
m.put(bh, num);
}
return m;
}
}
关于加入购物车的代码和购物车功能的实现代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
- 上一篇:虚拟币交易源代码(虚拟币开源代码)
- 下一篇:包含asp去除html代码的词条
相关推荐
- 05-14网站怎么设计,网站怎么设计怎么实现的
- 05-10百度指数的基本功能,百度指数的功能有哪些
- 05-09网页代码,网页代码快捷键
- 05-06单页网站的代码(完整的网页代码)[20240506更新]
- 05-06个人主页图片代码(个人主页图片代码怎么弄)[20240506更新]
- 05-06提取微信名片代码(微信名片信息提取)[20240506更新]
- 05-06php后台权限管理代码(php管理员权限)[20240506更新]
- 05-06付费观看代码php(付费观看代码)[20240506更新]
- 05-06在线html执行代码(html怎么运行)[20240506更新]
- 05-06源代码管理资源管理器(资源管理器运行代码)[20240506更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接