用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