"islower""isupper""toupper""tolower"函数的引用


#include "stdio.h"
#include"string.h"
main()
{    char s1[100],s2[100];
    int i,n=0,m;
    printf("请输入一个字符串:");
    gets(s1);
    m=strlen(s1);
    for(i=0;iif(islower(s1[i]))
        {    s2[n]=toupper(s1[i]);
            n++;
        }
        else if(isupper(s1[i]))
        {    s2(n)=tolower(s1[i]);
            n++;
        }
        else
            contiue;
    }
    printf("从键盘上输入字符串为:%s\n",s1);
    printf("字母大小写转换后且过滤掉非字母字符的字符串为:%s",s2);
    getchar();
}

img


按着课本打的,为什么会报错说未在这个范围声明

"islower""isupper""toupper""tolower"函数的引用需包含头文件:#include <ctype.h>

  • islower 函数 ,tolower函数,isupper函数,toupper函数都没有函数定义和函数实现,如果由自己实现都要加上才行;

  • 下图的标记的,s2 是数组,不是函数,要用 方括号

    img

  • continue; 不是 contiue; 你这里最后一个else,也没必要这个 continue,可以去掉这个分支

    img