c语言充值函数充不进去,c语言充值系统

c语言,购物卡消费充值 基本要求:1.按“+数字”给购物卡充值,按“-数字”表示消费,要在卡中减去

/*

专注于为中小企业提供网站设计制作、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业桦南免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了数千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

c语言,购物卡消费充值

基本要求:1.按“+数字”给购物卡充值,按“-数字”表示消费,要在卡中减去该值。

2.卡中余额少于3时,提示“余额不足,请充值”字样,并且此次不能消费。

扩展功能:1.按*键可查询当前余额。

2.按#键不允许充值和消费。显示“此卡暂时不能使用”字样。

*/

#includestdio.h

#includestring.h

using namespace std;

struct shopcard{

int balance;

int open;

};

void initcard(shopcard* card, int balance){

card-balance = balance;

card-open = 1;

}

int rechargeorconsum(shopcard* card, int num)

{

if (!card-open)

{

return -1;

}

else if (num 0 || card-balance + num = 3)

{

card-balance += num;

return 1;

}

else

return 0;

}

int getbalance(shopcard* card)

{

return card-balance;

}

void closecard(shopcard* card)

{

card-open = 0;

}

int main()

{

char instring[100] = {0};

char * tmp = "*";

int num, ret;

shopcard card;

initcard(card, 100);

printf("使用购物卡:输入+数字表示充值, 输入-数字表示消费,输入*查询余额,输入#表示关闭购物卡使用功能,输入0退出系统\n");

while(1)

{

scanf("%s", instring);

fflush(stdin);

if ('+' == instring[0] || '-' == instring[0])

{

sscanf(instring, "%d", num);

ret = rechargeorconsum(card, num);

switch(ret){

case -1:

printf("购物卡已关闭消费充值功能\n");

break;

case 0:

printf("余额不足\n");

break;

case 1:

break;

default:

break;

}

}

else if (!strcmp("#", instring))

{

closecard(card);

}

else if (!strcmp("*", instring))

{

printf("余额:%d\n", getbalance(card));

}

else if (!strcmp("0", instring))

{

break;

}

}

return 0;

}

//已调试通过,楼主记得采纳哈

函数调用不成功是什么原因?(C语言)

函数调用了,是你写的有问题。

比如你第一次调用 swap(n1,n2),这个时候程序把n1,n2的值传给p1,p2,然后p1,p2的值交换了,但是你需要的n1,n2没有变化。

你改成void swap(int n1,int n2),引用就可以了

c语言模拟充值

#include stdio.h

int main()

{

int i, sum=0, a;

printf("充值:\n");

printf("请输入你要充值的金额(最低限额50,最大限额500)\n");

scanf("%d", a);

if(a=50  a=500)

{

sum += a;

printf("\t充值成功!!您现在的总金额为 %d 元。可进行游戏!", sum);

}

else if(a  50)

printf("\t充值失败!! 您输入的金额过低!");

else

printf("\t充值失败!! 您输入的金额过高!");

return 0;

}

C语言函数那块的,为什么运行没有反应啊

你这个程序实现是有问题的

f1(int a)实现的是判定一个数是否是素数,是素数时返回1,否则返回0

int f1(int a)

{

int i;

for(i=1;i=a/2;i++) //因此初始应该让 i = 2

if(a%i==0) return 0;//这里任何一个整数都能够被1整除,所以一进入这个循环就返回0了

return 1;

}

void main()

{

int a;

printf("shuru");

scanf("%d",a);

if(a%2==0) f2(a); //这里主程序传进去的数是能被2整除的数,所以f2(a)中的实参a是一个偶数

else printf("chongxinshuru");

}

void f2(int a)

{

int i;

for(i=2;i=a/2;i++)

if(f1(a)) //而这里调用f1(a)只有当a是素数才会执行下一步,因为传进来的数a是个能被2整除的数,因此永远不会执行下边的代码

if(f1(a-i))

printf("%d+%d=%d\n",i,a-i,a);

}

你应该讲main函数中的if(a%2==0) f2(a); 这一句改成 if(a%2==1) f2(a);

修改后的程序如下:

#includestdio.h

int f1(int);

void f2(int);

void main()

{

int a;

printf("shuru:\n");

scanf("%d",a);

if(a%2==1)

f2(a);

else

printf("chongxinshuru:\n");

}

int f1(int a)

{

int i;

for(i=2;i=a/2;i++)

if(a%i==0)

return 0;

return 1;

}

void f2(int a)

{

int i;

for(i=2;i=a/2;i++)

if(f1(a))

if(f1(a-i))

printf("%d+%d=%d\n",i,a-i,a);

}

//测试结果为:

shuru:

7

2+5=7

Press any key to continue

在c语言中用不了函数,怎么回事

函数先使用后定义了。

C语言要求调用某一个函数之前,一定要知道该函数的定义。

两者修改方法:

//一、将函数的定义放在调用之前,这样调用的时候就知道该函数的定义了

#includestdio.h

void cheer() {

printf ("cheer");

}

int main() {

cheer();

//二、在调用函数之前,显示声明该函数的类型

#includestdio.h

int main() {

void cheer();

cheer();

void cheer() {

printf ("cheer");

}


当前题目:c语言充值函数充不进去,c语言充值系统
本文路径:http://scyanting.com/article/hcoosh.html