C编程,只有第一个if语句才有效

时间:2016-11-20 01:43:55

标签: c if-statement

我想知道是否有人可以帮助我理解为什么只有我的第一个if语句才有效。基本上,我正在研究l33t说转换器(lol),只有我的第一个if语句有效,这是我的代码:

#include<stdio.h>
#include<string.h>

void translate (char blurp[]);

int main(void) {

  char message[1024];

  printf("enter a message: \n");
  fgets(message, 1024, stdin);
  translate(message);

return 0;
}



void translate (char blurp[]) {
  int i;
  int length;

  length = strlen(blurp);

  printf("\nHere it is translated: \n");
  for ( i = 0; i != length; i++) {

    if (blurp[i] == 'a') {
      blurp[i] = '4';
      printf("%c", blurp[i]);
    }

    else if (blurp[i] == 'b') {
       blurp[i] = '8';
       printf("%c", blurp[i]);
    }

    else if (blurp[i] == 'e') {
       blurp[i] = '3';
       printf("%c", blurp[i]);

    }

    else if (blurp[i] == 'i') {
       blurp[i] = '|';
       printf("%c", blurp[i]);
    }

   else if (blurp[i] == 'o') {
       blurp[i] = '0';
       printf("%c", blurp[i]);
    }

   else if (blurp[i] == 's') {
       blurp[i] = '5';
       printf("%c", blurp[i]);

    }

    else {
        printf("%c", blurp[i]);
    }


  }

}

0 个答案:

没有答案