當前位置:首頁 » 編程語言 » c語言小票法
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言小票法

發布時間: 2022-05-18 23:28:16

『壹』 c語言打小票,怎麼編輯啊

C語言只是編程語言,打小票你要看建立在什麼硬體基礎上,比如用單片機,c語言控制單片機串口按照串口列印機指令要求輸出數據到列印機串口上就能列印出小票

『貳』 c語言列印購物小票問題

除了實收多少,還有物品名稱(字元串)、單價(float)、數量(整形)

『叄』 在c語言中 aver = &ave和*aver = ave有什麼區別嗎

區別很大。

int *aver;
這相當於是超市存包櫃列印出來的小票,上面可以標櫃子的編號;*aver指的是小票上的編號所對應那個櫃子

int ave;
這相當於是超市的存包櫃,而&ave表示的是這個櫃子的編號

aver=&ave;
把小票上的編號改為ave這個櫃子的編號
此時*aver和ave就是一樣的了


*aver=ave
是什麼意思呢?就是把ave那個櫃子里的東西復制一份,裝到小票上的編號所對應的那個櫃子里的東西。這里有一個問題,就是小票上對應的是哪個櫃子?如果之前沒有指定,那麼這時就出錯了

『肆』 C語言編寫「超市結賬系統」 急急急!!!

#include
<stdio.h>
#include
<fstream>
#include
<iostream>
#include
<string>
#include
<vector>
#include
<assert.h>
using
namespace
std;
//
Item
info
base
class
class
ItemInfo{
public:
ItemInfo(){}
ItemInfo(string
barcode,
string
name,
float
price)
{
this->barcode
=
barcode;
this->name
=
name;
this->price
=
price;
}
ItemInfo(string
barcode)
{
this->barcode
=
barcode;
}
void
Display()
{
cout
<<
barcode
<<"\t"<<name<<"\t"<<price<<
endl;
}
void
Input()
{
cout
<<
"輸入條形碼:"
<<
endl;
cin
>>
barcode;
cout
<<
"輸入名稱:"
<<
endl;
cin
>>
name;
cout
<<
"輸入價格:"
<<
endl;
cin
>>
price;
}
void
Modify()
{
cout
<<
"輸入名稱:"
<<
endl;
cin
>>
name;
cout
<<
"輸入價格:"
<<
endl;
cin
>>
price;
}
friend
ostream&
operator<<(ostream&
stream,
ItemInfo&
item){
stream
<<
item.barcode
<<'\t'<<
item.price
<<'\t'<<
item.name<<endl;
return
stream;
}
friend
istream&
operator>>(istream&
stream,
ItemInfo&
item){
stream
>>
item.barcode
>>
item.price
>>
item.name;
return
stream;
}
public:
string
barcode;
string
name;
float
price;
};
//
Interface
class
class
DataProvider{
public:
virtual
void
GetFullData(string
barcode,
string&
name,
float&
price)
=
0;
};
//
Purchase
item
class
class
ItemPurchaseInfo
:
public
ItemInfo{
public:
ItemPurchaseInfo():ItemInfo(){}
ItemPurchaseInfo(string
barcode,
int
count=1)
:
ItemInfo(barcode)
{
this->count
=
count;
}
//
Rember
to
call
this
when
barcode
set
void
GetFullData(DataProvider&
aPro)
{
aPro.GetFullData(barcode,
name,
price);
}
void
Input()
{
cout
<<
"輸入條形碼:"
<<
endl;
cin
>>
barcode;
cout
<<
"輸入數量:"
<<
endl;
cin
>>
count;
}
void
Display()
{
cout
<<
barcode
<<"\t"<<name<<"\t"<<price<<"\t"<<count<<
endl;
}
public:
string
barcode;
int
count;
};
//
Item
list
class
class
ItemList
{
public:
ItemList(){items.clear();}
friend
ostream&
operator<<(ostream&
stream,
ItemList&
list){
unsigned
int
count
=
list.items.size();
stream
<<count<<endl;
for(unsigned
int
i(0);i<count;i++)
stream<<
list.items.at(i);
return
stream;
}
friend
istream&
operator>>(istream&
stream,
ItemList&
list){
unsigned
int
count(0);
stream
>>count;
list.items.clear();
for(unsigned
int
i(0);i<count;i++){
ItemInfo
item;
stream
>>
item;
list.items.insert(list.items.end(),
item);
}
return
stream;
}
void
Add(ItemInfo
item)
{
items.insert(items.end(),
item);
}
void
Modify()
{
string
barcode;
cout
<<
"輸入條形碼:"
<<
endl;
cin
>>
barcode;
for(unsigned
int
i(0);i<items.size();i++)
{
if(items.at(i).barcode
==
barcode
)
{
items.at(i).Modify();
}
}
}
public:
vector<ItemInfo>
items;
};
//
Purchase
item
list
class
class
PurchaseItemList
{
public:
PurchaseItemList(){items.clear();}
void
Add(ItemPurchaseInfo
item)
{items.insert(items.end(),
item);}
public:
vector<ItemPurchaseInfo>
items;
};
//
Implements
the
interface
class
class
Cashier
:
public
DataProvider
{
public:
Cashier()
:
purchase(),
stock(){}
~Cashier(){}
public:
//
User
funcs
void
CheckIn(){
purchase.items.clear();
int
opt(0);
do
{
unsigned
int
i(0);
ItemPurchaseInfo
ipi;
ipi.Input();
purchase.Add(ipi);
cout
<<
"按0退出,任意鍵繼續"
<<
endl;
cin
>>
opt;
}
while(opt);
}
void
CheckOut(){
for(unsigned
int
i(0);
i
<
purchase.items.size();
i++)
{
purchase.items.at(i).GetFullData(
*this
);
}
float
checkin(0);
cout
<<
"輸入收款數:"
<<
endl;
cin
>>
checkin;
DisplayList(checkin);
}
void
Display()
{
cout
<<
endl<<"商品清單
"<<
stock.items.size()
<<
endl;
cout
<<"--------------------------------------"
<<
endl;
for(unsigned
int
i(0);i<
stock.items.size();
i++){
stock.items.at(i).Display();
}
cout
<<"--------------------------------------"
<<
endl;
}
void
DisplayList(float
checkin)
{
cout
<<
endl<<"購物小票清單"
<<
endl;
cout
<<"--------------------------------------"
<<
endl;
float
total(0.0);
for(unsigned
int
i(0);
i
<
purchase.items.size();
i++)
{
purchase.items.at(i).Display();
total
+=
purchase.items.at(i).price
*
purchase.items.at(i).count;
}
cout
<<"--------------------------------------"
<<
endl;
cout
<<"貨款合計:"<<
total
<<
"元"
<<
endl;
cout
<<"收款數:"<<
checkin
<<
"元"
<<
endl;
float
change(checkin-total);
assert(
change
>=
0.0);
cout
<<"找零:"<<
change
<<
"元"
<<
endl<<
endl;
}
friend
ostream&
operator<<(ostream&
stream,
Cashier&
c){
stream
<<
c.stock;
return
stream;
}
friend
istream&
operator>>(istream&
stream,
Cashier&
c){
c.stock.items.clear();
stream
>>
c.stock;
return
stream;
}
public:
//
interface
func
void
GetFullData(string
barcode,
string&
name,
float&price)
{
//
go
through
stock
and
find
the
item
by
barcode
matching
for(unsigned
int
i(0);
i
<
stock.items.size();
i++)
{
if(stock.items.at(i).barcode
==
barcode)
{
name
=
stock.items.at(i).name;
price
=
stock.items.at(i).price;
}
}
}
public:
PurchaseItemList
purchase;
ItemList
stock;
};
int
main()
{
int
opt(0);
Cashier
cashier;
ifstream
fin("data.bin",
ios::in
|
ios::binary);
fin.seekg(0,
ios::beg);
//cashier.stock.Load(fin);
fin
>>
cashier;
fin.close();
ofstream
fout;
ItemInfo
item;
do{
cout
<<
"1.
新購買"
<<
endl;
cout
<<
"2.
輸入新商品信息"
<<
endl;
cout
<<
"3.
修改商品信息"
<<
endl;
cout
<<
"4.
顯示商品信息"
<<
endl;
cout
<<
"0.
退出"
<<
endl;
cin
>>
opt;
switch(opt)
{
case
1:
cashier.CheckIn();
cashier.CheckOut();
break;
case
2:
item.Input();
cashier.stock.Add(item);
fout.open("data.bin",
ios::out|
ios::binary);
fout.seekp(0,ios::beg);
fout
<<
cashier;
fout.close();
break;
case
3:
cashier.stock.Modify();
fout.open("data.bin",
ios::out|
ios::app
|
ios::binary);
fout
<<
cashier;
fout.close();
break;
case
4:
cashier.Display();
break;
default:
break;
}
}
while(opt);
return
0;
}

『伍』 C語言怎麼寫小票列印機命令

DOS 命令 PRINT 可以列印 文本文件。
例如:
PRINT /D:\\MYNETWORK\PS_Printer A.IN

/D:\\MYNETWORK\PS_Printer -- 列印設備,我的網路上的列印機
A.IN -- 要打的文件名,可以含路徑

C 語言中函數 system("命令字元串");
把DOS命令字元串填入,就執行DOS命令。

『陸』 c語言程序設計作業!!急!!

第一題:
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int main()
{
int i,j, a,b, res, sum=0;
char ch;
printf("Now ready to answer!\nEvery question you have 3 chances to answer, first chance you answer right you can got 10, second got 7, third got 5. Otherwise can not got score!\n");
for(i=0; i<10; i++)
{
printf("%dth question:", i+1);
srand(time(NULL));
a = rand()%50;
b = rand()%(a>25?(50-a):a);
ch = rand()%2;
if(ch) ch='+';
else ch='-';
printf("%d %c %d = ", a, ch, b);
for(j=0; j<3; j++)
{
scanf("%d", &res);
if(ch=='+')
if(res==a+b){
printf("right!\n");
switch(j){
case 0: sum+=10;break;
case 1: sum+=7; break;
case 2: sum+=5; break;
}
break;
}
else{
printf("wrong!\n");
if(j!=2)printf("try again:");
}
else
if(res==a-b){
printf("right!\n");
switch(j){
case 0: sum+=10;break;
case 1: sum+=7; break;
case 2: sum+=5; break;
}
break;
}
else{
printf("wrong!\n");
if(j!=2)printf("try again:");
}
}
}
printf("your score is : %d\n", sum);
return 0;
}

『柒』 c語言 用chile和do chile編寫一個超市購物結賬價格的程序

#include <fstream>
#include <iostream>
#include <string>
#include <vector>
#include <assert.h>

using namespace std;

// Item info base class
class ItemInfo{
public:
ItemInfo(){}
ItemInfo(string barcode, string name, float price)
{
this->barcode = barcode;
this->name = name;
this->price = price;
}
ItemInfo(string barcode)
{
this->barcode = barcode;
}
void Display() {
cout << barcode <<"\t"<<name<<"\t"<<price<< endl;
}
void Input() {
cout << "輸入條形碼:" << endl;
cin >> barcode;
cout << "輸入名稱:" << endl;
cin >> name;
cout << "輸入價格:" << endl;
cin >> price;
}
void Modify() {
cout << "輸入名稱:" << endl;
cin >> name;
cout << "輸入價格:" << endl;
cin >> price;
}
friend ostream& operator<<(ostream& stream, ItemInfo& item){
stream << item.barcode <<'\t'<< item.price <<'\t'<< item.name<<endl;
return stream;
}
friend istream& operator>>(istream& stream, ItemInfo& item){
stream >> item.barcode >> item.price >> item.name;
return stream;
}

public:
string barcode;
string name;
float price;
};

// Interface class
class DataProvider{
public:
virtual void GetFullData(string barcode, string& name, float& price) = 0;
};

// Purchase item class
class ItemPurchaseInfo : public ItemInfo{
public:
ItemPurchaseInfo():ItemInfo(){}
ItemPurchaseInfo(string barcode, int count=1) :
ItemInfo(barcode)
{
this->count = count;
}

// Rember to call this when barcode set
void GetFullData(DataProvider& aPro) {
aPro.GetFullData(barcode, name, price);
}
void Input() {
cout << "輸入條形碼:" << endl;
cin >> barcode;
cout << "輸入數量:" << endl;
cin >> count;
}
void Display() {
cout << barcode <<"\t"<<name<<"\t"<<price<<"\t"<<count<< endl;
}
public:
string barcode;
int count;
};

// Item list class
class ItemList {
public:
ItemList()
friend ostream& operator<<(ostream& stream, ItemList& list){
unsigned int count = list.items.size();
stream <<count<<endl;
for(unsigned int i(0);i<count;i++)
stream<< list.items.at(i);
return stream;
}
friend istream& operator>>(istream& stream, ItemList& list){
unsigned int count(0);
stream >>count;
list.items.clear();
for(unsigned int i(0);i<count;i++){
ItemInfo item;
stream >> item;
list.items.insert(list.items.end(), item);
}
return stream;
}
void Add(ItemInfo item) {
items.insert(items.end(), item);
}
void Modify() {
string barcode;
cout << "輸入條形碼:" << endl;
cin >> barcode;
for(unsigned int i(0);i<items.size();i++) {
if(items.at(i).barcode == barcode ) {
items.at(i).Modify();
}
}
}
public:
vector<ItemInfo> items;
};

// Purchase item list class
class PurchaseItemList {
public:
PurchaseItemList()
void Add(ItemPurchaseInfo item)

public:
vector<ItemPurchaseInfo> items;
};

// Implements the interface class
class Cashier : public DataProvider {
public:
Cashier() : purchase(), stock(){}
~Cashier(){}
public: // User funcs
void CheckIn(){
purchase.items.clear();
int opt(0);
do {
unsigned int i(0);
ItemPurchaseInfo ipi;
ipi.Input();
purchase.Add(ipi);
cout << "按0退出,任意鍵繼續" << endl;
cin >> opt;
} while(opt);
}
void CheckOut(){
for(unsigned int i(0); i < purchase.items.size(); i++) {
purchase.items.at(i).GetFullData( *this );
}
float checkin(0);
cout << "輸入收款數:" << endl;
cin >> checkin;
DisplayList(checkin);
}
void Display()
{
cout << endl<<"商品清單 "<< stock.items.size() << endl;
cout <<"--------------------------------------" << endl;
for(unsigned int i(0);i<
stock.items.size(); i++){
stock.items.at(i).Display();
}
cout <<"--------------------------------------" << endl;
}
void DisplayList(float checkin)
{
cout << endl<<"購物小票清單" << endl;
cout <<"--------------------------------------" << endl;
float total(0.0);
for(unsigned int i(0); i < purchase.items.size(); i++) {
purchase.items.at(i).Display();
total += purchase.items.at(i).price * purchase.items.at(i).count;
}
cout <<"--------------------------------------" << endl;
cout <<"貨款合計:"<< total << "元" << endl;
cout <<"收款數:"<< checkin << "元" << endl;
float change(checkin-total);
assert( change >= 0.0);
cout <<"找零:"<< change << "元" << endl<< endl;

}
friend ostream& operator<<(ostream& stream, Cashier& c){
stream << c.stock;
return stream;
}
friend istream& operator>>(istream& stream, Cashier& c){
c.stock.items.clear();
stream >> c.stock;
return stream;
}

public: // interface func
void GetFullData(string barcode, string& name, float&price) {
// go through stock and find the item by barcode matching
for(unsigned int i(0); i < stock.items.size(); i++) {
if(stock.items.at(i).barcode == barcode) {
name = stock.items.at(i).name;
price = stock.items.at(i).price;
}
}
}

public:
PurchaseItemList purchase;
ItemList stock;
};

int main()
{
int opt(0);
Cashier cashier;
ifstream fin("data.bin", ios::in | ios::binary);
fin.seekg(0, ios::beg);
//cashier.stock.Load(fin);
fin >> cashier;
fin.close();

ofstream fout;

ItemInfo item;
do{
cout << "1. 新購買" << endl;
cout << "2. 輸入新商品信息" << endl;
cout << "3. 修改商品信息" << endl;
cout << "4. 顯示商品信息" << endl;
cout << "0. 退出" << endl;
cin >> opt;
switch(opt)
{
case 1:
cashier.CheckIn();
cashier.CheckOut();
break;
case 2:
item.Input();
cashier.stock.Add(item);
fout.open("data.bin", ios::out| ios::binary);
fout.seekp(0,ios::beg);
fout << cashier;
fout.close();
break;
case 3:
cashier.stock.Modify();
fout.open("data.bin", ios::out| ios::app | ios::binary);
fout << cashier;
fout.close();
break;
case 4:
cashier.Display();
break;
default:
break;
}
} while(opt);
return 0;
}
另外,站長團上有產品團購,便宜有保證

『捌』 求一個C語言(非C++)的用於商品結算的代碼。

總共43行~
看起來是像模像樣~

#include<stdio.h>
#include<windows.h>
main()
{char k='y';
int s,n[5],money[5]={0},number[5]={0},i=1,sum=0;
while(k=='y'||k=='Y')
{printf("請輸入要購買的商品編號(1、2、3、4):\n");
scanf("%d",&s);
switch (s){case 1:
printf("請輸入商品1的數量:\n");
scanf("%d",&n[1]);
money[1]=money[1]+10*n[1];
++number[1];
break;
case 2:
printf("請輸入商品2的數量:\n");
scanf("%d",&n[2]);
money[2]=money[2]+15*n[2];
++number[2];
break;
case 3:
printf("請輸入商品3的數量:\n");
scanf("%d",&n[3]);
money[3]=money[3]+20*n[3];
++number[3];
break;
case 4:
printf("請輸入商品4的數量:\n");
scanf("%d",&n[4]);
money[4]=money[4]+30*n[4];
++number[4];
break;}
++i;
printf("是否需要買其它商品?yes or no?\n");
scanf("%s",&k);}
system("cls");
printf("----------------------------------\n-------------購物詳單-------------\n商品編號 個數 價格\n");
for(i=1;i<=4;++i){
if(number[i]!=0){
printf(" %4d %4d %4d\n",i,number[i],money[i]);
sum=sum+money[i];}}
printf("----------------------------------\n共計:%d元\n----------------------------------\n",sum);}