2016-12-30 3 views
-2

내 프로그램 (내 연습)에 C 언어를 사용합니다. 모든 변수에 1 개의 문자열을 사용하면이 코드가 작동합니다. 하지만, 문자열의 배열 (2 차원 변수)을 사용할 때 str2 [x] (두 번째 문자열)는 인코딩되지 않으며 str1 [x] & str3 [x] 만 있습니다.간단한 코드로 C를 사용하여 substract 문자

여기

내 코드 (내가 여기에 검색하여이 코드를 얻을) :

#include<stdio.h> 
#include<conio.h> 

char *encode(char *str){ 
    int i=0; 
    while(str[i]!='\0'){ 
    str[i]=str[i]-18; 
    i++; 
    } 
    return str; 
} 

int main(){ 
    int i,n; 
    char str1[50][50],str2[50][50],str3[50][50]; 

    printf("How many data: "); 
    scanf("%d",&n); 
    for(i=0;i<n;i++){ 
    printf("String 1: "); 
     scanf("%s",str1[i]); 
    printf("String 2: "); 
     scanf("%s",str2[i]); 
    printf("String 3: "); 
     scanf("%s",str3[i]); 
    } 
    for(i=0;i<n;i++){ 
    printf("index-%d: %s - %s - %s\n",i,encode(str1[i]),encode(str2[i]),encode(str3[i])); 
    } 
    return 0; 
} 

예를 들어, 내가 입력 2 개 데이터입니다.

제 입력 : "Test1", "Test2", "Test3" 번째 입력 : 전 대한 인덱스 0 "Test4", "Test5", "Test6"

출력 : index-0: BSab[ - - BSab! (제 2 공정이 skiped이다) 및 인덱스 1 프로세스가 중지되기 때문에 대 출력이없는 경우, 안 할 왜 그런지 안다.

+1

작동 방법 : https://ideone.com/zgcZbC. 너는 어떻게 끈을 놓고 있니? –

+0

이상한데, 내 문제를 공유하기 전에이 코드를 시도하면 항상 실패합니다. 하지만 이제는 일합니다. 대답 해 주셔서 감사합니다. –

답변