题目说明
- 题目按难度从易到难排列
- 包含选择题和编程题两种类型
- 点击"显示答案"按钮查看解析
- 建议独立完成后再查看答案
一、简单难度
简单
1. 以下代码的输出结果是什么?
int x = 5;
if (x > 3)
{
Console.WriteLine("Hello");
}
答案:A
解析:因为x的值为5,大于3,所以条件x > 3为true,执行Console.WriteLine("Hello")语句,输出"Hello"。
解析:因为x的值为5,大于3,所以条件x > 3为true,执行Console.WriteLine("Hello")语句,输出"Hello"。
简单
2. 以下代码的输出结果是什么?
int x = 2;
if (x > 3)
{
Console.WriteLine("Hello");
} else {
Console.WriteLine("World");
}
答案:B
解析:因为x的值为2,不大于3,所以条件x > 3为false,执行else分支,输出"World"。
解析:因为x的值为2,不大于3,所以条件x > 3为false,执行else分支,输出"World"。
简单
3. 以下代码的输出结果是什么?
bool isRaining = false;
if (!isRaining)
{
Console.WriteLine("今天不下雨");
}
答案:A
解析:!isRaining是逻辑非操作,isRaining的值为false,所以!isRaining为true,执行输出语句。
解析:!isRaining是逻辑非操作,isRaining的值为false,所以!isRaining为true,执行输出语句。
二、中等难度
中等
4. 以下代码的输出结果是什么?
int score = 75;
if (score >= 90)
{
Console.WriteLine("优秀");
} else if (score >= 80)
{
Console.WriteLine("良好");
} else if (score >= 60)
{
Console.WriteLine("及格");
} else {
Console.WriteLine("不及格");
}
答案:C
解析:score的值为75,依次判断条件:75不大于等于90,也不大于等于80,但大于等于60,所以输出"及格"。
解析:score的值为75,依次判断条件:75不大于等于90,也不大于等于80,但大于等于60,所以输出"及格"。
中等
5. 以下代码的输出结果是什么?
int a = 10, b = 20;
if (a > 5 || b < 15)
{
Console.WriteLine("条件成立");
} else {
Console.WriteLine("条件不成立");
}
答案:A
解析:使用了||(逻辑或)运算符,只要有一个条件为true,整个条件就为true。a > 5为true,所以条件成立。
解析:使用了||(逻辑或)运算符,只要有一个条件为true,整个条件就为true。a > 5为true,所以条件成立。
中等
6. 以下代码的输出结果是什么?
int x = 5;
if (x > 5)
{
Console.WriteLine("A");
} else if (x == 5)
{
Console.WriteLine("B");
} else if (x < 5)
{
Console.WriteLine("C");
}
答案:B
解析:x的值为5,所以第二个条件x == 5为true,输出"B"。注意,if-else if结构中只要有一个条件成立,就不会执行后面的条件。
解析:x的值为5,所以第二个条件x == 5为true,输出"B"。注意,if-else if结构中只要有一个条件成立,就不会执行后面的条件。
三、困难难度
困难
7. 以下嵌套if代码的输出结果是什么?
int x = 10, y = 5;
if (x > 5)
{
if (y > 8)
{
Console.WriteLine("A");
} else {
Console.WriteLine("B");
}
} else {
Console.WriteLine("C");
}
答案:B
解析:外层if条件x > 5为true,进入内层if判断。内层条件y > 8为false(y=5),所以执行内层else分支,输出"B"。
解析:外层if条件x > 5为true,进入内层if判断。内层条件y > 8为false(y=5),所以执行内层else分支,输出"B"。
困难
8. 以下复杂嵌套代码的输出结果是什么?
int a = 3, b = 5, c = 7;
if (a > b)
{
if (b > c)
{
Console.WriteLine("X");
} else {
Console.WriteLine("Y");
}
} else if (a < b)
{
if (b < c)
{
Console.WriteLine("Z");
} else {
Console.WriteLine("W");
}
}
答案:C
解析:a=3,b=5,c=7。外层条件a < b为true,进入第二个else if分支。内层条件b < c也为true(5 < 7),所以输出"Z"。
解析:a=3,b=5,c=7。外层条件a < b为true,进入第二个else if分支。内层条件b < c也为true(5 < 7),所以输出"Z"。
困难
9. 以下代码的输出结果是什么?
int x = 5;
int y = 10;
if (x > 3 && y > 5)
{
if (x < y)
{
Console.WriteLine("Success");
}
}
else
{
Console.WriteLine("Failure");
}
答案:A
解析:外层条件x > 3 && y > 5为true(5>3且10>5),进入外层if块。内层条件x < y也为true(5<10),所以输出"Success"。
解析:外层条件x > 3 && y > 5为true(5>3且10>5),进入外层if块。内层条件x < y也为true(5<10),所以输出"Success"。
四、编程题
中等
10. 编写一个程序,根据用户输入的整数判断其是正数、负数还是零。
要求:
- 使用if-else if-else结构
- 输入一个整数
- 输出对应的判断结果
- 使用if-else if-else结构
- 输入一个整数
- 输出对应的判断结果
参考代码:
using System;
class Program
{
static void Main(string[] args)
{
Console.Write("请输入一个整数:");
int number = int.Parse(Console.ReadLine());
if (number > 0)
{
Console.WriteLine("这是一个正数");
} else if (number < 0)
{
Console.WriteLine("这是一个负数");
} else
{
Console.WriteLine("这是零");
}
}
}
困难
11. 编写一个程序,根据用户输入的三个整数,输出其中的最大值。
要求:
- 使用嵌套if或if-else if结构
- 输入三个整数
- 输出最大值
- 使用嵌套if或if-else if结构
- 输入三个整数
- 输出最大值
参考代码:
using System;
class Program
{
static void Main(string[] args)
{
Console.Write("请输入第一个整数:");
int num1 = int.Parse(Console.ReadLine());
Console.Write("请输入第二个整数:");
int num2 = int.Parse(Console.ReadLine());
Console.Write("请输入第三个整数:");
int num3 = int.Parse(Console.ReadLine());
int max;
if (num1 > num2)
{
if (num1 > num3)
{
max = num1;
} else
{
max = num3;
}
} else
{
if (num2 > num3)
{
max = num2;
} else
{
max = num3;
}
}
Console.WriteLine("最大值是:" + max);
}
}