NO.12【婳骨】の张三-打工人之路

题目

原题

张三上班
张三在上班途中, 可以选择走路和汽车两种方式
但他不清楚哪种方式比较快, 因为骑车需要找车, 开锁, 停车 需要耽搁很多时间.
设找到自行车, 开锁, 骑上自行车需要花27秒, 停车需要花23秒
步行每秒1.2米, 骑车每秒3.0米
给出张三距离公司的距离, 请问是骑车快还是走路快.
输入:
一个整数, 表示到公司的距离
输出:
如果骑车快, 输出"建议骑车"
如果走路快, 输出"建议走路"
如果一样快, 输出"骑车或走路都行"

开题

输入距公司的距离->计算骑车与走路的时间并比较->输出结果

代码

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <conio.h>

#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable:4996)


void Int(double* a);	//对输入数据进行判断

int main()
{
	double t1 = 50, t2 = 100, v1 = 3, v2 = 20, v0 = 1.2;	//定义骑车、开车准备与结束所花时间总和 以及骑车、开车与步行的速度
	double x;	//距离
	int choice;	//确认修理选项
	double time1, time2, time0;	//计算骑自行车、开奔驰与步行所花时间
	int money = 5000;	//初始钱数
	int durable1 = 5;		//自行车耐久
	int i = 0, j = 0, k = 0;	//成就判断
	int day = 1;	//天数
	system("title 平平无奇-张三上班路");
	while(1)
	{
		printf("****************************************************\n");
		printf("*  第%d周\t身份:【打工人】\t金钱:%d  *\n", day, money);
		printf("****************************************************\n");
		printf("你是【张三】,一个平凡的上班族\n打工人打工魂,打工的都是人上人\n为了更高效地上班,请选择打工地点距离您的距离(米)以便选择高效的上班方式\n请输入(保留两位小数):\n");
		Int(&x);
		fflush(stdin);
		printf("距离为:%.2lfm\n", x);
		choice = 0;	//修理选项的默认值
		time1 = t1 + x / v1;	//骑自行车时间
		time0 = x / v0;			//跑步时间
		time2 = t2 = x / v2;	//开车时间
		if (time1 < time0)		//骑车快
		{
			if (durable1 == 0)
			{
				Sleep(1500);
				printf("要啥自行车,么得自行车了!!!搁家里躺着叭,没有自行车这个距离不想出门了\n不就交500元嘛,拿去拿去,老子不干了!\n");
				printf("要不要跑步去啊,这样说不定就不用交钱了!\n(去的话请输入1否则输入任意键)\n");
				choice = getch();
				if (choice == '1')
					choice = 1;
				else
				{
					printf("那就不去咯~\n");
					money -= 500;
					j++;
				}
			}
			else
			{
				money += 1000;	//工资:钱数+1000
				durable1 -= 1;
				Sleep(1000);
				printf("这周【张三】平均用了%.2lf秒骑自行车到了公司,没有迟到,nice!\n拿工资啦!1000元!!\n", time1);
				printf("车子用得久了,磨损了一点,当前耐久%d\n", durable1);
				if (durable1 == 0)
				{
					printf("车子散架了!!你亲爱的【二轱辘奔驰】啊!!要不要去修呢,要花你2000大洋\n(如要修复请输入1否则输入任意键)\n");
					choice = getch();
					if (choice == '1')
					{
						money -= 2000;
						Sleep(1500);
						printf("修复成功,当前耐久值为5!爷的【二轱辘奔驰】回来啦!\n");
						k++;
						durable1 = 5;
					}
					else printf("没钱,不修\n");
				}
			}
		}
		if (time1 > time0 || choice == 1)		//跑步快
		{
			if (time0 < 1200)
			{
				money += 800;
				Sleep(1500);
				printf("冲鸭!用了%.2lf秒安全到达!!\n拿到工资800元!\n", time0);
			}
			if (time0 >= 1200)
			{
				money -= 3000;	//扣3000元
				Sleep(1000);
				printf("失去梦想!%.2lf秒迟到了还被可恶的资本家走了3000元血汗钱!!\n", time0);
				j++;
			}
			v0 += 0.1;	//步行速度增加!
			Sleep(1000);
			printf("经过一段时间的锻炼,【张三】的速度提高了!现在秒速%.2lf米\n", v0);
		}
		if (time1 == time0)		//一样快
		{
			Sleep(1500);
			printf("既然两个一样快%.2lf秒,那么……\n", time0);
			Sleep(1500);
			printf("今天就不打工了,睡吧睡吧!交500元旷工费就交吧\n");
			money -= 500;
			j++;
		}
		printf("可恶,今天完成任务又不是前三!\n");
		Sleep(1500);
		printf("我的目标是!购买一辆真正的奔驰!而这,需要20000元!\n");
		Sleep(1500);
		printf("于是吃饭花了100元");
		Sleep(2000);
		money -= 100;
		day ++;
		system("cls");
		if (i == 0)		//成就判断1
		{
			if (v0 > 3)
			{
				Sleep(1500);
				printf("曾经我比不上那辆【二轱辘奔驰】,现在,我才是王者!!我,就是张三!\n获得成就【战胜了!二轱辘奔驰】\n");
				i++;
			}
		}
		if (i == 1)
		{
			if (v0 > 10.4)
			{
				Sleep(1500);
				printf("超越了!!创造新的历史!\n获得成就【最强人类!张三参上】");
				i++;
			}
		}
		if (i == 2)
		{
			if (v0 > 11)
			{
				printf("达成结局0:【极限挑战者】\n");
				Sleep(1500);
				printf("【张三】走了,去了远方\n");
				Sleep(1500);
				printf("他要去寻找");
				Sleep(1500);
				printf("【人类的极限】!");
				Sleep(1500);
				printf("身份:【凹凸曼!】\nThe End");
				exit(0);
			}
		}
		if (money < 0 || j == 8)	//成就判断2
		{
			printf("达成结局1:【走投无路打工人】\n");
			Sleep(1500);
			printf("终于,张三受不了了!\n");
			Sleep(1500);
			printf("做什么打工人!这打工人,不做也罢!\n");
			Sleep(1000);
			printf("几天后");
			Sleep(1500);
			printf("饿得两眼发昏的张三走向了停在路边的电瓶车……\n");
			Sleep(1500);
			printf("...");
			Sleep(1500);
			printf("...");
			Sleep(1500);
			printf("...\n");
			Sleep(1500);
			printf("张三入狱了,看着门牌上的【老九门下第一看守所-天字壹号】\n");
			Sleep(1500);
			printf("他,");
			Sleep(1500);
			printf("陷入了沉思\n");
			Sleep(1500);
			printf("身份:【囚犯?】\nThe End");
			exit(0);
		}
		if (k == 5)	//成就判断3
		{
			printf("达成结局2:【我的小“奔驰”】\n");
			Sleep(1500);
			printf("我的小“奔驰”时尚时尚最时尚!");
			Sleep(1500);
			printf("在这座孤独的城市,陪伴着孤单的你——【张三】的\n");
			Sleep(1500);
			printf("也就这辆从你清醒开始就在你身边的【二轱辘奔驰】了\n");
			Sleep(1500);
			printf("以后,还请多多指教,小轱辘\n");
			Sleep(1500);
			printf("你呢喃着这样的话语,进入了梦乡\n");
			printf("...");
			Sleep(1500);
			printf("...");
			Sleep(1500);
			printf("...\n");
			Sleep(1500);
			printf("【张三】的故事还在继续下去");
			Sleep(1500);
			printf("陌生的人,陌生的城市,陌生的世界,熟悉的自己\n");
			Sleep(1500);
			printf("那么");
			Sleep(1500);
			printf("你的故事呢?\n");
			Sleep(1500);
			printf("身份:【永远的打工人?】\nThe End");
			exit(0);
		}
		if (money >= 20000)	//成就判断4
		{
			printf("达成结局3:【我张三居然……】");
			Sleep(1500);
			printf("终于!赚够钱了!\n");
			Sleep(1500);
			printf("兴冲冲地来到了全市最大的连锁汽车店,【张三】向经理提交自己信息后\n");
			Sleep(1500);
			printf("经理愣了一下,");
			Sleep(1500);
			printf("弯腰\n");
			Sleep(1500);
			printf("少爷,");
			Sleep(1500);
			printf("您终于回来了,我们张家都在等着您的回归!\n");
			Sleep(1500);
			printf("【张三】的眼神恍惚了一下\n");
			Sleep(1500);
			printf("所有记忆一下子涌了上来\n");
			Sleep(1500);
			printf("一抬头,经理看见了少爷眸子中一闪而过的锋芒\n");
			Sleep(1500);
			printf("“没想到,");
			Sleep(1500);
			printf("我张三居然……”\n");
			Sleep(1500);
			printf("...");
			Sleep(1500);
			printf("...");
			Sleep(1500);
			printf("...\n");
			printf("身份:【张家少爷?】\n未完待续");
			exit(0);
		}
	}
	system("pause");
	return 0;
}

void Int(double* a)	//对输入数据进行判断
{
	do
	{
		if (scanf_s("%lf", a) == 1)
		{
			break;
		}
		char choice;
		while ((choice = getchar()) != '\n' && choice != EOF);
		printf("输入的不是数字!\n");
	} while (scanf_s("%lf", a) != 1);
}

部分运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

暂定3+1重结局

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值