c语言对字符数组的输入错误

c语言输入字符串数组的时候不清楚如何去除数字‘
编写程序,输入一行字符,以回车符 \n 结束,将其中的大写字母转换为相应的小写字母,小写字母转换为相应的大写字母后输出,其他字符按原样输出

#include 
#include 
#define s 100
int main () {
    char str[s];
    gets(str);
    for(int i=0;i
        if(str[i]>'A'&&str[i]<'Z'){
            str[i] += 32;
            continue;
        }
        else if(str[i]>'a'&&str[i]<'z'){
            str[i] -= 32;
            continue;
        }
    }
    puts(str);
    return 0;
}

运行错误是

img


#include <string.h>
#include <stdio.h>
#define s 100
int main () {
    char str[s];
    gets(str);
    for(int i=0;str[i]!=0;)
    {
        if(str[i]>='0'&&str[i]<='9'){
            strcpy(&str[i],&str[i+1]);
            continue;
        }
        if(str[i]>='A'&&str[i]<='Z'){
            str[i] += 32;
        }
        else if(str[i]>='a'&&str[i]<='z'){
            str[i] -= 32;
        }
        i++;
    }
    puts(str);
    return 0;
}

用for语句,应该有三个结构,定义,判断条件和计数更新,你只定义了,判断条件和计数更新好像都没有