字符串在c#中使用条件运算符

时间:2016-11-02 09:55:44

标签: c#

我的程序输出应该打印n是否很奇怪。我尝试了下面的代码,但是当我运行代码时,它会抛出一个错误,例如“只能使用数组初始化程序表达式来分配给数组类型。请尝试使用新的表达式”。有人可以纠正代码。提前谢谢。

这些是规则: 如果N是奇数,则打印奇怪 如果N是偶数且在2到5的包含范围内,则打印不奇怪 如果N是偶数且在6到20的包含范围内,则打印奇怪 如果N是偶数且大于20,则打印Not Weird

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;

class Solution
{
  static void Main(String[] args)
  {
      int N = Convert.ToInt32(Console.ReadLine());
      string s = {(N%2 !=0 ? "Weird" : (N>20 ? "Not Weird" : ((N > 1 && N <6) ? "Not Weird" : "Weird")))};
      Console.writeLine(s);
  }
}

1 个答案:

答案 0 :(得分:0)

你的错误是因为,嗯......你正在使用数组初始化器。

当您实例化字符串时,使用{}初始化一个数组,而应该完全删除该部分并使用

string s = (N%2 !=0 ? "Weird" : (N>20 ? "Not Weird" : ((N > 1 && N <6) ? "Not Weird" : "Weird")));

数组初始化程序可用于字符串,但仅限于创建char数组

string s = new char[] { 'H', 'e', 'l', 'l', 'o', };