top1编程
← 返回题目
题解

是否通过考试

1 条题解

  • 0
    @ 2026-8-4 10:11:45

    解题思路

    这道题要求我们使用“条件运算符”(也叫三目运算符)来判断成绩是否合格。条件运算符的格式是: 条件 ? 表达式1 : 表达式2 它表示:如果条件成立,整个式子的值就是“表达式1”的结果;如果条件不成立,整个式子的值就是“表达式2”的结果。可以把它想象成一个二选一的路口,条件决定走左边还是走右边。

    我们的条件是“成绩 n 大于等于 60”。如果成立,输出 "Pass";如果不成立,输出 "Fail"。所以可以写成: n >= 60 ? "Pass" : "Fail"

    把整个条件表达式放到输出语句里,程序就会根据成绩自动选择输出哪一个字符串。注意比较成绩要用 >=(大于等于),因为题目说“大于等于60”就通过,正好 60 分是算通过的。

    平时用 if-else 也能写同样功能的程序,但这道题专门要求用条件运算符,就是要我们练习这种格式:一个问号,两个结果,中间用冒号隔开,写出来就像在问“成绩合格吗?合格就 Pass,不合格就 Fail”。

    参考代码

    #include using namespace std;

    int main() { int n; // n 表示学生的成绩 cin >> n; // 读入成绩

    // 条件运算符:成绩>=60 输出 "Pass",否则输出 "Fail"
    cout << (n >= 60 ? "Pass" : "Fail") << endl;
    
    return 0;
    

    }

    复杂度分析

    程序只做了一次比较和一次输出,运算次数固定,不会因为输入数据的规模而改变,所以时间复杂度是 O(1)。只使用了一个 int 变量存放成绩,空间复杂度也是 O(1)。

    • 1