填空题 1.  请补充函数proc(),该函数的功能是:将字符串str中的大写字母都改为对应的小写字母,其他字符不变。
    例如,若输入“How Are You?”,则输出“how are you?”。
    注意:部分源程序如下。
    请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
    试题程序:
    #include<stdio.h>
    #include<string.h>
    #include<conio.h>
    char *proc(char str[])
    {
    int i;
    for(i=0;str[i];i++)
    {
    if((str[i]>='A')&&(______))
    ______;
    }
    return(______);
    }
    void main()
    {
    char str[81];
    printf("\nPlease enter a string:");
    gets(str);
    printf("\nThe result string is: \n%s",
    proc(str));
    }
  • 1、
【正确答案】 1、str[i]<='Z'
   str[i]+=32
   str    
【答案解析】 要将字符串中所有的大写字母改为对应的小写字母,首先应该找出字符串中所有的小写字母。判断一个字符是否是大写字母,只要看其是否在A和Z之间,因此,第一空处填“str[i]<='Z'”。每找到一个大写字母,就将其改为小写字母。大写字母与小写字母之间的关系为ASCII码值相差32,因此,第二空处填“str[i]+=32”。得到的新的字符串放在str中,要将其返回给主函数,因此,第三空处填“str”。