在练习用C语言进行简答的编程时,发现无法对一个函数的返回值进行使用。
将函数的返回值进行,使用时进行到相应语句就不在执行反而进行前一个函数的运行,将输入的内容重复输入才能调用最后的数据,请问如何直接调用函数的返回数据,而不是运行一遍函数。
int yuanshishu ()
{
int choose2;
printf("***************欢迎使用原石计数部分*************\n");
printf("请输入您要计算的内容:整个版本的收益:1\n");
printf("请输入您要计算的内容:一半卡池时间内的收益:2\n");
printf("请输入您要计算的内容:本时间到卡池关闭前的收益:3\n");
scanf("%d",&choose2);
switch(choose2)
{
case 1:
system("cls");
all(); //原石数目函数的调用
total();
break;
/* case 2:
system("cls");
half();//树脂函数的调用
break;
case 3:
now();
break;
default:
printf("输入错误,请重新输入\n");
system("pause");//暂停,防止程序闪退
system("cls"); //清屏函数
break;
*/
}
}
int all()
{
int b_yue = 0, b_ri = 0, b_nian = 0;
int f_yue = 0, f_ri = 0, f_nian = 0;
int n_yue = 0, n_ri = 0, n_nian = 0;
int day=0,day_one=0,day_two=0;
int yuanshione = 0, yuanshitwo = 0;
int yuanshizong = 0, xing = 0;
int yuanshi = 0,isolate=0;
double p = 0.0, banbenhao = 0.0;
int ka = 0,choose2;
int yuefenrun[12] = {31,28,31,30,31,30,31,31,30,31,30,31 };
printf("请输入现阶段的版本号:\n");
scanf("%f", &banbenhao);
printf("请输入版本开始的日期:年-月-日\n");
scanf("%d %d %d", &b_nian, &b_yue, &b_ri);
printf("请输入版本结束的日期:年-月-日\n");
scanf("%d %d %d", &f_nian, &f_yue, &f_ri);
/* printf("请输入现在进行计算的日期的日期:年-月-日\n");
scanf("%d %d %d", &n_nian, &n_yue, &n_ri);
*/
day_one=yuefenrun[b_yue-1]-b_ri+1;
day_two=f_ri;
day=day_one+day_two;
printf("版本持续时间为:%d天\n",day);
return day;
}
int total()
{
int ka;
int rock=0,rock_one,rock_two,is,ai_all;
printf("请问您是否充值小月卡\n");
printf("是请输入----1不是请输入---0\n");
scanf("%d", &ka);
if(ka==1)
{
rock_one=all()*60;
rock_two=all()*90;
rock=rock_one+rock_two;
is=rock_two/160;
printf("您充值的小月卡获得的原石收益为%d",rock);
printf("合计为%d抽",is);
}
else
{
rock=60*all();
}
ai_all=rock/160;
printf("您所有的收益合计为%d",ai_all);
}


虽然可以调整前后顺序完成这部分的功能,但是有返回值的函数不是可以直接调用,返回是数据吗?
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”