二级C语言 程序改错题

找出错误,只改 found 下一行,答案点击按钮展开

56程序改错题:大写转小写(2 处错误)

函数 lower 将大写字母转为小写,非大写原样返回。请改正 found 标记处的 2 处错误。

#include <stdio.h>
char lower(char c)
{
/**********found**********/
    if(c >= 'a' && c <= 'z'){
/**********found**********/
        return c - 32;
    }
    return c;
}
int main()
{
    printf("%c\n", lower('R'));
    return 0;
}
参考答案
第1处: if(c >= 'A' && c <= 'Z'){
第2处: return c + 32;
解析

第1处应判断大写范围 'A'..'Z';第2处大写转小写应 +32(-32 方向反了,'R' 会变成 '2')。lower('R') 应输出 r。

试题及答案仅供练习参考,不保证完全准确,正式考试请以NCRE官方教材及官方内容为准。

©2026 NCRE二级题库 版权所有