- #include <stdio.h>
- void change(char str[],int length)
- {
- char ss[30];
- int j = 0;
- for (int i = 0; i < length; i++,j++) {
- if (str[i] >= 'a' && str[i] <= 'z') {
- ss[j] = str[i];
- ss[++j] = str[i]+1;
- ss[++j] = str[i]+2;
- }
- else{
- ss[j] = str[i];
- }
- }
- ss[j] = '\0';
- printf("%s\n",ss);
- }
- int main(int argc, const char * argv[]) {
-
- char s[30];
- printf("input the chars\n");
- scanf("%s",s);
- change(s, (int)strlen(s));
-
- return 0;
- }
复制代码
你最后来了个++j这里多加了一次,因为for里面判断的时候,会加一次,所以这里就多加了一次。 |