当前位置:编程学习 > C#/ASP.NET >>

C#随机题目问题

我现在正在做一个小程序,就是随机产生20道题目,可以通过按扭"上一题","下一题"来查看,点"交卷"就可以给出成绩以及正确答案,这应该怎么做,是否要数据库?   求高手指教. --------------------编程问答-------------------- 题目是事先设计好的且答案是固定的,,随机从题库里面去的话,最好是使用数据库。。不过也可以用txt存储你的题目,这要看你自己怎么设计了。
答案不是固定的,这个有点难度,好好设计下算法吧 --------------------编程问答-------------------- 一条数据:subId编号-subText题目-subATxt-subBTxt-subCTxt-subDTxt-subCorrectTxt
存储:access xml sql ..........
可以通过按扭"上一题","下一题"来查看 在label或者textbox上加载数据库的内容。
通过sql语句判断是否正确。循环统计各种结果。各种boolean... --------------------编程问答-------------------- 可以没有数据库,有一个xml配置文件就可以。每个问题有对应唯一一个id、分值、是否得分。
每次随即取的id都要存起来为下次判断避免重复。 --------------------编程问答-------------------- 每次开始做题直接抽随机不重复的20个题目id
这样比点击下一题时再随机生成不重复ID少写一些代码

--------------------编程问答-------------------- 题目少就没必要用sqlserver了  用XML吧  方便快捷 --------------------编程问答-------------------- 可以不用数据库,存在文件里,最好是选择题,或者有标准答案的题,不然很难自动给分 --------------------编程问答-------------------- 小弟新手,没考虑性能,只是给个想法,
//全部题目
            List<string> list = new List<string>();
            list.Add("第一题:问题。选项:ABCD__华丽的分割线__答案A");
            list.Add("第二题:问题。选项:ABCD__华丽的分割线__答案A");
            list.Add("第二题:问题。选项:ABCD__华丽的分割线__答案A");
            list.Add("第二题:问题。选项:ABCD__华丽的分割线__答案A");
            //随机出题
            int count=0;
            System.Collections.Hashtable ht = new System.Collections.Hashtable();
            while (count <= 3)
            {
                Random rd = new Random(list.Count);
                int i = rd.Next();
                if (!ht.ContainsKey(i))
                {
                    ht.Add(i, list[i].Split(new string[]{"__华丽的分割线__"},StringSplitOptions.RemoveEmptyEntries)[0]);
                }

            }
            //公布答案
            string output="";
            foreach (int i in ht.Keys)
            {
                output += list[i].Replace("__华丽的分割线__", "\t");
            } --------------------编程问答-------------------- --------------------编程问答-------------------- 随机..
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,