| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5214 人关注过本帖
标题:刚学c语言,老师让编打字游戏,无奈啊。。。。。。。。
只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你用的Windows7中已经内置了.NET3.5,如果安装过VS2010,就有.NET4,如果没有,可以在以下链接中下载:
http://msdn.(v=vs.100).aspx

.NET4概述:http://msdn.(v=vs.100).aspx

[ 本帖最后由 TonyDeng 于 2013-1-2 14:39 编辑 ]

授人以渔,不授人以鱼。
2013-01-02 14:37
zcfyxw
Rank: 1
等 级:新手上路
帖 子:68
专家分:7
注 册:2012-12-26
收藏
得分:0 
等会,小哥,我又想到个问题,你看,打字练习,有文章练习,但是我这个文章是以子函数存啊,还是以文件存着,文件我们都没有讲,不知道怎么从外存中调用文件
2013-01-02 14:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用zcfyxw在2013-1-2 14:52:46的发言:

等会,小哥,我又想到个问题,你看,打字练习,有文章练习,但是我这个文章是以子函数存啊,还是以文件存着,文件我们都没有讲,不知道怎么从外存中调用文件

确实要读外部文件,但你没学到,可以用一段字符串代替,等学到文件的时候,再把文件读入取代原先的字符串就是了。

授人以渔,不授人以鱼。
2013-01-02 14:56
zcfyxw
Rank: 1
等 级:新手上路
帖 子:68
专家分:7
注 册:2012-12-26
收藏
得分:0 
可惜我们老师说要用的啊。。。。。。。。。。。。
我很无奈的说
2013-01-02 15:00
zcfyxw
Rank: 1
等 级:新手上路
帖 子:68
专家分:7
注 册:2012-12-26
收藏
得分:0 
回复 73楼 TonyDeng
你给我那个我也没法利用啊,只看到结果了,我的课题基本完成了,很简陋,还没有文章练习,还要解决你说的按其他键的忽视,今天是第八天啊 ,还有两天的说。。。。。。。。。。。
2013-01-02 15:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
下面是我那个程序的打字控制段的代码,你参考着,那些标识符用英文单词,很容易知道是什么意思的:
程序代码:
            Console.CursorVisible = false;
            Boolean exit = false;
            Int32 row = 0;
            Int32 col = 0;
            while (!exit)
            {
                if (Console.KeyAvailable)
                {
                    ConsoleKeyInfo keypress = Console.ReadKey(true);
                    switch (keypress.Key)
                    {
                        case ConsoleKey.Escape:
                            exit = true;
                            break;
                        case ConsoleKey.F2:
                            row = 0;
                            col = 0;
                            Console.SetCursorPosition(text_scope.Left, text_scope.Top);
                            Console.CursorVisible = true;
                            message.Start();
                            break;
                        case ConsoleKey.F3:
                            message.Stop();
                            break;
                        case ConsoleKey.F4:
                            message.Stop();
                            message.Clear();
                            Show_Text();
                            Console.CursorVisible = false;
                            break;
                        case ConsoleKey.Enter:
                            if ((row < Text.Count) && (row < text_scope.Height - 1))
                            {
                                ++row;
                                col = 0;
                                ++Console.CursorTop;
                                Console.CursorLeft = text_scope.Left;
                            }
                            break;
                        default:
                            if (message.Processing && !Char.IsControl(keypress.KeyChar))
                            {
                                ++message.Total_Number;
                                if (col < Text[row].Length)
                                {
                                    if (keypress.KeyChar == Text[row][col])
                                    {
                                        ++message.Correct_Number;
                                        Console.ForegroundColor = ConsoleColor.Green;
                                    }
                                    else
                                    {
                                        --message.Correct_Number;
                                        if (message.Correct_Number < 0)
                                        {
                                            message.Correct_Number = 0;
                                        }
                                        Console.ForegroundColor = ConsoleColor.Red;
                                    }
                                    Console.Write(Text[row][col++]);
                                    if (col >= Text[row].Length)
                                    {
                                        if ((row < Text.Count) && (row < text_scope.Height - 1))
                                        {
                                            ++row;
                                            col = 0;
                                            ++Console.CursorTop;
                                            Console.CursorLeft = text_scope.Left;
                                        }
                                    }
                                }
                            }
                            break;
                    }
                }
            }

授人以渔,不授人以鱼。
2013-01-02 15:05
zcfyxw
Rank: 1
等 级:新手上路
帖 子:68
专家分:7
注 册:2012-12-26
收藏
得分:0 
回复 76楼 TonyDeng
。。。。。。。。。。。。。。。
看不懂的说,看着都不像c语言??好高级的,打的字符我都没见过。。。。。
小哥,文件那个问题,怎么个调用法啊,直接用档吗,打开就是??
2013-01-02 15:12
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
是的,跟在控制台读键盘输入是一样的道理。你想像文件中已经有一大串人家按好了的字符序列在等着你读入,你用fgetc()逐个读到内存的数组中就是了。这个简单的应用,不用什么特殊处理,先定义一个跟屏幕大小一样的二维字符数组,按照顺序把读入的字符一个一个地填进去,然后再按前面你已经学会的那样把每个字符摆到自己想摆的地方即可。
收到的鲜花
  • zcfyxw2013-01-02 15:35 送鲜花  2朵  

授人以渔,不授人以鱼。
2013-01-02 15:17
zcfyxw
Rank: 1
等 级:新手上路
帖 子:68
专家分:7
注 册:2012-12-26
收藏
得分:0 
回复 78楼 TonyDeng
那你看我的理解啊,是不是,比如在源代码文件夹里建个文档,里面有一篇文章,然后在程序里用fgetc把文档里的文章赋予程序中的一个数组???
2013-01-02 15:34
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
是的。文章一定要用文本文件哦,用记事本打就可以了。注意读到'\n'符时的处理,昨天说过。

授人以渔,不授人以鱼。
2013-01-02 15:36
快速回复:刚学c语言,老师让编打字游戏,无奈啊。。。。。。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.108963 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved