用C語言買菜
㈠ 怎麼用c語言編寫一個程序,完成如下功能:定義一個結構數組,輸入5種商品的名稱,數量和單價。計算出每種
新鮮出爐,還有些BUG,可以自行修改。
#include<stdio.h>
int main()
{
double rental;//rental銷售總額
double pri[5]={2.46,4.95,9.12,4.35,6.66};//pri[]零售價格
int i,num[5],count[5];//num[]名字,sale[]銷售數量
for (i=1;i<6;i++)
{
printf ("輸入第%d種商品名字和銷售量: ",i);
scanf ("%d %d",&num[i],&count[i]);//無法限制用戶輸入數據類型,可產生bug
printf ("商品名字:%d,價格:%f,銷售量:%d ",num[i],pri[i],count[i]);//可注釋
rental += pri[i]*count[i];//+=
}
printf ("銷售總額是%f ",rental);
}
㈡ c語言程序中包含助記符嗎
c語言程序中包含助記符。
c語言程序一個主函數。即main函數。main函數是程序的入口,不管它在程序頭文件下面的任何地方,程序執行時都是先調用main函數,再用main函數調用各個函數,舉個形象的例子,有個「做菜」程序。
c語言程序在主函數中,根據情況,可能還需要調用「買菜,切菜,炒菜」等子函數。但是如果什麼都不包含你得自己寫所有的庫函數,所以一般的都有stdio,意思應該是standard input output,既是標准輸入輸出,否則的話你連printf。
c語言命令行與main()函數的參數存在如下的關系:
其中program為文件名,也就是一個由program.c經編譯、鏈接後生成的可執行文件program.exe,其後各跟5個參數。對main()函數來說,它的參數argc記錄了命令行中命令與參數的個數,共6個,指針數組的大小由參數argc的值決定,即為char*argv。
數組的各指針分別指向一個字元串。應當引起注意的是接收到的指針數組的各指針是從命令行的開始接收的,首先接收到的是命令,其後才是參數。
㈢ 怎麼用C語言編寫一個程序 要求:輸入單價和個數後可以計算出這些商品的總價格
#include<stdio.h>
struct sp
{
char name[10]; //名稱數自己定
float price;
int num;
float sum;
}sp[5];
float total=0;
int main()
{
int i;
float calc(float sum1,float sum2, float sum3, float sum4, float sum5);
void output();
for(i=0;i++;i<5)
{
printf("請輸入第%d種商品的名稱,單價,數量:\n",i);
gets(sp[i].name);
scanf("%f",&sp[i].price);
scanf("%d",&sp[i].num);
sp[i].sum=price*num;
output();
printf("%f\n",calc(sp[0].sum,sp[1].sum,sp[2].sum,sp[3].sum,sp[4].sum));
}
float calc(float sum1,float sum2, float sum3, float sum4, float sum5)
{
total=sum1+sum2+sum3+sum4+sum5;
return total;
}
void output()
{
int i;
for(i=0;i++;i<5)
{
puts(sp[i].name);
printf("\n%f\n",sp[i].price);
printf("%d\n",sp[i].num);
printf("%f\n",sp[i].sum);
}
}
㈣ 看一下c語言哪裡錯了,求修改
txt文本中的逗號改為空格
#include <stdio.h>
#include <math.h>
int main()
{
int num[3],sum=0,price[3],height,i;
char name[3][30];
FILE *fp;
fp=fopen("cai.txt","r");
for(i=0;i<3;++i)
fscanf(fp,"%d %s %d",&num[i],name[i],&price[i]);
printf("請您輸入您所購買的菜的編號以及重量(kg):");
printf("白菜(1) 魚(2) 雞蛋(3) ");
scanf("%d%d",&i,&height);
sum=price[i-1]*height;
printf("您應付金額為:%d",sum);
fclose(fp);
return 0;
}
㈤ 如何用C語言做一個菜單,裡面放程序
1、首先新建源文件c.c,用文本編輯器打開。
㈥ c語言 如何用switch語句編寫一個有關商場購物金額優惠的選擇程序
#include <stdio.h>
int main(int argc, char** argv)
{
int amount = 0;
scanf("%d", &amount);//輸入顧客購買的總額
int status = amount/1000;
switch (status)
{
case 0: break;
case 1: amount = amount * 0.95; break;
case 2: amount = amount*0.90; break;
case 3: amount *= 0.85; break;
default: amount *= 0.80; break;
}
printf("%d\n", amount);//列印出打折後的總額
return 0;
}
㈦ 編寫c語言程序,輸入購物款數,計算並輸出優惠價。(要求用switch語句編寫)
#include <stdio.h>
int main()
{
float totalprice=0,level=0; //總的消費額,打折等級標志
scanf("%d",&totalprice);
if(totalprice<=1000) level=1; //一共分為五等,不同等級,對應不同的優惠策略。
else if(totalprice>1000 && totalprice<=2000) level=2;
else if(totalprice>2000 && totalprice<=3000) level=3;
else if(totalprice>3000 && totalprice<=5000) level=4;
else level=5;
switch(level) //一共分為五等,不同等級,對應不同的優惠策略。
{
case 1: printf("%f",totalprice);break;
case 2: printf("%f",totalprice*0.95);break;
case 3: printf("%f",totalprice*0.90);break;
case 4: printf("%f",totalprice*0.85);break;
default: printf("%f",totalprice*0.80);break;
}
return 0;
}
㈧ C語言中的main()函數
一、定義
main函數,又稱主函數,是程序執行的起點,main是相對來說的,如同音學理論之主調於泛音,泛音即程序中的除main之外的其他函數,迎合人們的思考方式而生成的而非必定的模式.有主有次,執行起來條清縷析,既可將程序模塊化又實現了一個閉合的整體。
二、main()函數的形式
在最新的 C99 標准中,只有以下兩種定義方式是正確的:
int main(void) /*無參數形式*/
{
...
return 0;
}
int main(int argc, char *argv[]) /*帶參數形式*/
{
...
return 0;
}
int指明了main()函數的返回類型,函數名後面的圓括弧一般包含傳遞給函數的信息。void表示沒有給函數傳遞參數。
三、main()函數的返回值
從前面我們知道main()函數的返回值類型是int型的,而程序最後的 return 0; 正與之遙相呼應,0就是main()函數的返回值。那麼這個0返回到那裡呢?返回給操作系統,表示程序正常退出。
因為return語句通常寫在程序的最後,不管返回什麼值,只要到達這一步,說明程序已經運行完畢。而return的作用不僅在於返回一個值,還在於結束函數。
四、main()函數的參數
C編譯器允許main()函數沒有參數,或者有兩個參數(有些實現允許更多的參數,但這只是對標準的擴展)。這兩個參數,一個是int類型,一個是字元串類型。
第一個參數是命令行中的字元串數。按照慣例(但不是必須的),這個int參數被稱為argc(argument count)。第二個參數是一個指向字元串的指針數組。命令行中的每個字元串被存儲到內存中,並且分配一個指針指向它。
按照慣例,這個指針數組被稱為argv(argument value)。系統使用空格把各個字元串格開。一般情況下,把程序本身的名字賦值給argv[0],接著,把最後的第一個字元串賦給argv[1],等等。
(8)用C語言買菜擴展閱讀
C++中的main函數的應用:
C++繼承了C語言的大部分特性,因此保留了「程序總是從main函數開始執行,且總是默認從main函數的return語句或結尾處結束運行」這一傳統,但是要注意,C++中的main函數要想作為程序執行的出入口,必須寫在全局(Global)范圍,不能寫成某個結構體或某個類的成員。
雖然main函數可以作為結構體或者類的成員函數,但相應地會失去作為程序出入口的功能。C++中全局main函數的書寫格式與C語言完全相同,功能也完全相同,且同一C++程序同樣只能有一個全局main函數。
㈨ 用C語言編寫一個程序,要求輸入購買商品的錢款數,輸出相應的折扣率
你這個題目無法實現的,因為折扣率應該是在知道原價的基礎上的。目前給出條件不足。
這里做個假設:
如果輸入是兩個,折扣前和折扣的,那麼可以計算,比如:
float beforePayment,afterPayment;
float percentage;
scanf("折扣前金額=%f",&beforePayment);
scanf("折扣後金額=%f",&afterPayment);
percentage=afterPayment/beforePayment;
printf("產品折扣率為:%.2f",percentage);//保留兩位小數進行顯示
㈩ 編寫一個C語言程序,求:用40元錢買蘋果、梨和西瓜,總數能買100個,已知蘋果為0.4元一個,梨0.2元一個,
#include <stdio.h>
main(){
int na,np,nw,n; // 個數,總個數
double va=0.4,vp=0.2,vw=4; // 單價
double v; //總費用
for (na=0;na<=100;na++)
for (np=0;np<=100;np++)
for (nw=0;nw<=100;nw++){
v=na*va+np*vp+nw*vw;
n=na+np+nw;
if (n==100 && v==40.0) //若總個數和總費用符合要求,則輸出結果:
printf("Apple=%d Pear=%d Watermel=%d\n",na,np,nw);
}
return 0;
}
結果:
Apple=5 Pear=90 Watermel=5
Apple=24 Pear=72 Watermel=4
Apple=43 Pear=54 Watermel=3
Apple=62 Pear=36 Watermel=2
Apple=81 Pear=18 Watermel=1
Apple=100 Pear=0 Watermel=0