C语言小程序(七)、石头剪刀布
本来挺简单的一个程序,但突然想把《Friends》给糅合进去,就多花了一些心思,这是我写过最有趣的程序了。
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- int getrand()
- {
- srand(time(NULL));
- return rand()%3;
- }
- int win_lose(int choice)
- {
- int rand = 0;
- char *p[3] = {"SCISSORS", "STONE", "CLOTH"};
- rand = getrand();
- printf("\nThe system give the %s.\n",p[rand]);
- rand++;
- if(choice == rand) //even
- {
- printf("\nJoey:\tHei, How you doing? We call it even, all right?\n");
- printf("\tAnd if you are Chandler M. Bing, of course you will say ok.\n");
- return 0;
- }
- else if(rand==choice-1 || rand==choice+2) //win
- {
- printf("\nMonica:\tOf course the winner is Me. I knew it, you such a loser,\n");
- printf("\tyou can't win me ever!\n");
- printf("Ross:\tIt can't be, I am Profess Geller and I am a doctor.\n");
- printf("\tI can't lose, you must cheat me last time. \n");
- return 1;
- }
- else //lose
- {
- printf("\nRachel:\tOh my god! Oh my god! I can't believe this. Phoebe,\n");
- printf("\tyou are my best friend, can we forget this?\n");
- printf("Phoebe:\tOk, But it is when you say that you don't love Ross any more.\n");
- return -1;
- }
- }
- int main()
- {
- int choice = 0;
- int flag = 0;
- int rot = 0;
- char ch;
- system("clear");
- printf("***********************************************");
- printf("\n\tLets play a game about <Friends>.\n");
- printf("***********************************************");
- printf("\nJanice:\tYou don't want to see me any more, right? \n\tSo just chose a number quickly:\n");
- printf("\n1.SCISSORS\n2.STONE\n3.CLOTH\n");
- do
- {
- printf("\nInput your choice:");
- scanf("%d",&choice);
- if(choice>0 && choice<4)
- {
- flag = win_lose(choice);
- while((ch=getchar())!='\n' && ch!=EOF);
- printf("\nGunther:I want to see Rachel");
- if(flag == -1)
- printf(" again");
- printf(", so please replay it.(y/n)");
- }
- else
- {
- while((ch=getchar())!='\n' && ch!=EOF);
- printf("\nMonica:\tWhat's the matter with you! What you need is just chose\n");
- printf("\ta number from 1 to 3. So are you ready?(y/n)");
- }
- ch = getchar();
- }
- while(ch=='y' || ch=='Y' || ch=='\n');
- printf("\nGoodbye!\n");
- return 0;
- }
谨以此程序纪念下《Friends》,Monica、Ross、Joey、Rachel、Chandler、Phoebe。
还请诸位大侠自动忽略那蹩脚的英语。
C语言小程序(七)、石头剪刀布的更多相关文章
- C语言小程序——推箱子(窄字符和宽字符)
C语言小程序——推箱子(窄字符Version) 推箱子.c #include <stdio.h> #include <conio.h> #include <stdlib. ...
- 通过反汇编C语言小程序学习Liunx汇编语言
大家好! 我是来自山东师范大学的吴乐. 今天在<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ...
- Linux下简单C语言小程序的反汇编分析
韩洋原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 写在开始,本文为因为参加MOO ...
- c语言小程序以及java生成注释文档方法
c语言小程序:sizeof和strlen() sizeof运算符以字节为单位给出数据的大小,strlen()函数以字符为单位给出字符串的长度,字符和字节不是一回事. char类型用于存储字母和标点符号 ...
- Linux C语言小程序
Linux C语言小程序 #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include & ...
- 微信小程序(七)-项目实例(原生框架 MINA转云开发)==02-云开发-配置
云开发:1.就是用云函数的型式来使用云存储和云数据库完成各种操作! 2.只关注调什么函数,完成什么功能即可,无需关心HTTP请求哪一套! 3.此模式不代表没有服务器,只是部署在云环境中 ...
- 自动生成.py文件头部的C语言小程序
每次都 vi xxx.py 然后再打 #!/usr/bin/env python 等等的程序头信息感觉有点麻烦,于是便想着写一个小程序自动生成这些头信息了,顺便在 ~/.bashrc 里写入 alia ...
- c语言小程序
这是一个用c语言写的小程序,功能是随机输出30道100以内的四则运算,先生成两个随机数,再通过随机数确定四则运算符号,最后输出题目. #include<iostream> using na ...
- C语言小程序之整除
看到有人要求用C语言写这样一个小程序,就拿来温习一下 需求:输出从1到2015这2015个自然数中,能被4或5整除,但不能被30整除的数,并计算有多少个数. #include<stdio.h ...
随机推荐
- unity shader学习笔记(1) shader基础结构以及Properties面板
首先是shader的基础结构: Shader "Custom/Example { Properties//变量属性面板 { } SubShader { Tags { "Render ...
- Java引用类型作为形参和返回值
一.什么是引用类型 在Java中引用类型包括三种:类.抽象类.接口. 二.引用类型作为形参使用 1.类作为形参 /** * 类作为形参,实际传递的是该类的对象 */ class Student { p ...
- CentOS7安装MySQL8.0小计
之前讲配置文件和权限的时候有很多MySQL8的知识,有同志说安装不太一样,希望发个文,我这边简单演示一下 1.环境安装 下载MySQL提供的CentOS7的yum源 官方文档:<https:// ...
- ABAP 发邮件(三)
[转自http://blog.sina.com.cn/s/blog_7c7b16000101bnxk.html]SAP ABAP 发邮件方法三(OO) *&------------------ ...
- python基础10 ---匿名函数和递归
一.匿名函数 1.lambda表达式就相当于匿名函数,其格式为: lambda 参数列表:参数表达式 2.lambda自带return值,因为匿名函数有个限制,就是只能有一个表达式,不用写return ...
- 【整理学习Hadoop】Hadoop学习基础之一:服务器集群技术
服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器.集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任 ...
- DHTMLTree、Dtree和Ztree的学习使用
一.DHTMLTree是树菜单,允许我们快速开发界面优美,基于Ajax的javascript库.她允许在线编辑,拖拽,三种状态(全选.不选.半选),复选框等模式.同时在加载大数据量的时候,仍然可以保持 ...
- jQuery横向手风琴
在线演示 本地下载
- 【并查集】关押罪犯(BSOJ2809)
Description S城现有两座监狱,一共关押着N名罪犯,编号分别为1~N.他们之间的关系自然也极不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突.我们用“怨 气值”(一个正整 ...
- 一步一步带你分析 requirejs
详细源代码一共就2000多行,来看我这篇分析的同学应该都下载下来了,好了,话不多说,开始: 代码的开头就出现3个全局变量: requirejs, require, define var require ...