wangyongda 发表于 2014-12-24 12:23:57

求帮忙看一下代码哪里错误,修改一下,谢谢

题目:你弟弟刚刚学会写英语的一(one)、二(two)和三(three)。他在纸上写了好些一二三,可惜有些字母写错了。已知每个单词最多有一个字母写错了(单词长度肯定不会错),你能认出他写的啥吗?
输入第一行为单词的个数(不超过 10)。以下每行为一个单词,单词长度正确,且最多有一个字母写错。所有字母都是小写的。输出对于每组测试数据,输出一行,即该单词的阿拉伯数字。输入保证只有一种理解方式。样例输入
3 owe too theee
样例输出
1
2
3
我写的代码 int i,b;            char[] a = new char;            int n =int.Parse(Console.ReadLine());            for (i = 0; i <= n;i++ )            {                string s = a.ToString();                Console.Write(s);                Console.ReadKey(true);                b = a.GetLength(0);                if (b == 3)                {                  if ((s == 'o' && s == 'n') || (s == 'o' && s == 'e') || (s == 'n' && s == 'e'))                  {                        Console.WriteLine("1");                  }                  else { Console.WriteLine("2"); }
                }                else { Console.WriteLine("3"); }


ibcadmin 发表于 2014-12-24 14:50:07

..不懂。。。 高端啊

wangyongda 发表于 2014-12-24 19:03:43

ibcadmin 发表于 2014-12-24 14:50
..不懂。。。 高端啊

好吧

沐府小悠然 发表于 2014-12-29 09:46:58

:(要真是你们老师出的题,真难为你们老师了

应用题能用到编程上,32个服



这段代码,你凑活试试

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

namespace ConsoleApplication1
{
    class Program
    {
      static void Main(string[] args)
      {
            Console.WriteLine("输入循环次数:");
            int count = int.Parse(Console.ReadLine());//此处不做判断(不判断输入的是字符或者数字),输入循环次数
            //进入循环
            while ((count--) > 0)
            {
                string str = "";
                //如果输入的字符串长度小于三,不满足one two的判断,则继续输入
                while (str.Length < 3)
                {
                  Console.WriteLine("输入单词:");
                  str = Console.ReadLine().ToLower() ;
                }

                #region 此处判断单词长度,已知,单词长度one two 为3,three为5
                switch (str.Length)
                {
                  case 3:
                        if (str.IndexOf('o') > -1)
                        {
                            //判断 one
                            if (str.IndexOf('n') > -1 || str.IndexOf('e') > -1)
                            {
                              Console.WriteLine("1");
                            }
                            //判断two
                            if (str.IndexOf('t') > -1 || str.IndexOf('w') > -1)
                            {
                              Console.WriteLine("2");
                            }
                        }
                        break;
                  case 5:
                        //字符串长度为5就不用管了,反正就三个单词,不是one,不是two,就是three
                        Console.WriteLine("3");
                        break;
                  default:
                        //输入字符的长度不为5,不为3的时候,输出(-1)
                        Console.WriteLine("-1");
                        break;
                }
                #endregion

            }
      }
    }
}
页: [1]
查看完整版本: 求帮忙看一下代码哪里错误,修改一下,谢谢