B066

01-程序填空题 田少松, 软件154 1121浏览

所属年份:2011.3

函数fun的功能是进行字母转换。若形参ch中是小写英文字母,则转换成对应的大写英文字母;若ch中是大写英文字母,则转换成对应的小写英文字母;若是其他字符则保持不变;并转换后的结果作为函数值返回。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。

注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!

#include    <stdio.h>
#include    <ctype.h>
char fun(char  ch)
{
    /**********found**********/
    if ((ch>='a')___1___(ch<='z'))
        return  ch -'a' + 'A';
    if ( isupper(ch) )
        /**********found**********/
        return  ch +'a'-___2___ ;
    /**********found**********/
    return ___3___;
}

main()
{
    char  c1, c2;
    printf("\nThe result  :\n");
    c1='w';
    c2 = fun(c1);
    printf("c1=%c    c2=%c\n", c1, c2);
    c1='W';
    c2 = fun(c1);
    printf("c1=%c    c2=%c\n", c1, c2);
    c1='8';
    c2 = fun(c1);
    printf("c1=%c    c2=%c\n", c1, c2);
}

【参考答案】

(1)&& 
(2)'A' 
(3)ch

【考点分析】
本题考查:小写字母转大写ASCII-32,大写字母转小写ASCII+32; if条件表达式(逻辑运算符的选择);函数的返回值。

【解题思路】
填空1:if条件表达式的考查,判断ch是否为小写字母,因而本空因该填写&&。
填空2:大写转换小写,大写转小写ASCII+32,因此本空应填’A’。
填空3:按题意若是其他字符则保持不变,并返回。此空要表达的就是既不是大写字母也不是小写字母,因而此空应该填写ch。