用c语言编写金山打字游戏,c#实现简单金山打字小游戏(源码)

using GameDemo.Utils;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace GameDemo

{

class Program

{

static void Main(string[] args)

{

int total=0;//计时

Console.WriteLine("开始游戏");

Console.WriteLine("准备好开始游戏吗?y/n?");

if (Console.ReadLine().Equals("n")) {

Console.WriteLine("游戏已退出!");

return;

}

Console.WriteLine("请输入关卡数量");

int gk = Int32.Parse(Console.ReadLine());

Console.WriteLine("请输入每个关卡输入的次数");

int count = Int32.Parse(Console.ReadLine());

Console.WriteLine("请输入闯关输入的字数的个数");

int size = Int32.Parse(Console.ReadLine());

for (int i = 0; i

{

for (int j = 0; j

{

Console.WriteLine("这是第"+(i+1)+"关"+"第"+(j+1)+"次");

//产生随机字母

string str = new RandomUtils().CreateRandomWord(size);

Console.WriteLine("你要输入的内容为:"+str);

//时间计算

DateTime start = DateTime.Now;

//等待用户输入

string userinput=Console.ReadLine();

DateTime end = DateTime.Now;

int t= (int)(end.Ticks - start.Ticks)/10000000;//单次计时

total += t;//总计时

//检查用户输入是否正确

if (userinput.Equals(str))

{

Console.WriteLine("恭喜,你输入对了!用时"+t+"秒");

}

else {

Console.WriteLine("抱歉,你输入错了,游戏结束!");

return;

}

}

if (i == gk-1) {//闯完所有关卡

Console.WriteLine("恭喜你全部过关,总用时为"+total+"秒");

return;

}

Console.WriteLine("准备好进入下一关了吗 y/n");

string comd = Console.ReadLine();

if (comd.Equals("n")) {

Console.WriteLine("游戏已退出!");

return;

}

}

}

}

}

//生产字符串的工具类

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace GameDemo.Utils

{

class RandomUtils

{

///

/// 用来装载字符的数组

///

private char[] chars = new char[50];

///

/// 初始化数组数据

///

public RandomUtils() {

//得到a-z的字符

int idx=0;

for (int i = 'a'; i

{

if (i == 'o') {//去掉o字母

continue;

}

chars[idx] += (char)i;

idx++;

}

//得到1-9的字符

int idx2=idx;

for (int j ='0'; j

{

chars[idx2++] = (char)j;

}

//重新组装数据

char[] newchars = new char[idx2];

for (int m = 0; m

{

if (chars[m] == 'l') {//将小写的l换成L

chars[m] = 'L';

}

newchars[m] = chars[m];

}

//将重组后的新数组赋值给原来的数组便于给其他方法访问数组数据

chars = newchars;

}

///

/// 随机产生字符串

///

/// 产生的字符串个数

///

public string CreateRandomWord(int size) {

StringBuilder builder = new StringBuilder();

Random r = new Random();

for (int i = 0; i

{

char c = chars[r.Next(chars.Length)];

if (builder.ToString().Contains(c)) {//处理字符串重复出现

i--;

continue;

}

builder.Append(c);

}

return builder.ToString();

}

}

}

HTML5小游戏源码收藏

html5魅族创意的贪食蛇游戏源码下载 html5网页版打砖块小游戏源码下载 html5 3D立体魔方小游戏源码下载 html5网页版飞机躲避游戏源码下载 html5三国人物连连看游戏源码下载 js ...

Creator仿超级玛丽小游戏源码分享

Creator仿超级玛丽小游戏源码分享 之前用Cocos Creator 做的一款仿超级玛丽的游戏,使用的版本为14.2 ,可以直接打包为APK,现在毕设已经完成,游戏分享出来,大家一起学习进步.特别 ...

flappy pig小游戏源码分析(1)——主程序初探

闲逛github发现一个javascript原生实现的小游戏,源码写的很清晰,适合想提高水平的同学观摩学习.读通源码后,我决定写一系列的博客来分析源码,从整体架构到具体实现细节来帮助一些想提高水平的朋 ...

flappy pig小游戏源码分析(3)——解剖util

这一节我们继续高歌猛进,如果对源码中有无论无何都理解不通的问题,欢迎和我交流,让我也学习一下,我的qq是372402487. 还是按照惯例看看我们的目录结构. 我们在前两节中已经分析了game.js, ...

flappy pig小游戏源码分析(2)——解剖option

今天继续分析flappy bird的源码.重温一下源码的目录结构. 在本系列第一篇中我们分析了game.js文件,也就是整个程序的架构.这一篇我们来看看option.js文件,这个文件的内容很简单,主 ...

h5小球走迷宫小游戏源码

无意中找到的一个挺有意思的小游戏,关键是用h5写的,下面就分享给大家源码 还是先来看小游戏的截图 可以用键盘的三个键去控制它,然后通关 下面是源代码 &lt ...

C\C++ 1A2B小游戏源码

学了一段时间,心血来潮写了一个1A2B小游戏,很多人应该玩过,是一个挺有意思的益智小游戏,之前用易语言写过,现在又用C++重写了一下. 编译运行无错,整体程序设计思路为:进入循环,初始化游戏,读入一个 ...

flappy pig小游戏源码分析(4)——核心pig模块(未完待续)

热身之后,我们要动点真格的了,游戏叫flappy pig,我们的pig终于要出场了. 老规矩,看看目录结构,读者对着目录结构好好回想我们已经讲解的几个模块: 其中game.js是游戏主程序,optio ...

2d命令行小游戏源码

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

随机推荐

2>&1 linux

2>&1使用 2>&1使用 一 相关知识 1)默认地,标准的输入为键盘,但是也可以来自文件或管道(pipe |).2)默认地,标准的输出为终端(terminal),但是也可 ...

Vijos 1100 (区间DP)

题目链接: https://vijos.org/p/1100 题目大意:NOIP著名的加分二叉树.给出一棵树的中序遍历,加分规则左子树*右子树+根.空子树分数为1.问最大加分的树结构,输出树结构的先序 ...

20150916_001 vba 基础

一.什么是“宏”.“宏”有什么用 关于“宏”的详细定义,可以参考百度百科的解释(点击查看).我给它一个简单的或许不太严谨的定义: 宏的通俗定义:宏是被某些软件所能识别.理解并执行的特定代码/脚本. 宏 ...

Java中Properties类的操作配置文件

知识学而不用,就等于没用,到真正用到的时 候还得重新再学.最近在看几款开源模拟器的源码,里面涉及到了很多关于Properties类的引用,由于Java已经好久没用了,而这些模拟器大多用 Java来写, ...

在浏览器中简单输入一个网址,解密其后发生的一切(http请求的详细过程)

在浏览器中简单输入一个网址,解密其后发生的一切(http请求的详细过程) 原文链接:http://www.360doc.com/content/14/1117/10/16948208_42571794 ...

Android NDK and OpenCV Development With Android Studio

Android NDK and OpenCV Development With Android Studio Hujiawei 172 2014年10月22日 发布 推荐 0 推荐 收藏 4 收藏,5 ...

css3 linear-gradient渐变效果及兼容性处理

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值