#28237: 請問大家我這樣的寫法如何修改才能讓下一行讀入的字串輸出至下行?


ic231542211 (willie)

學校 : 不指定學校
編號 : 44051
來源 : [123.194.107.200]
最後登入時間 :
2022-09-15 15:14:37
e578. 10222 - Decode the Mad man -- UVA | From: [123.194.107.200] | 發表日期 : 2021-11-19 21:57

#include<stdio.h>

#include<string.h>

int main(){

    char str[999999];

    char keyboard[] = "`1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./";

    while(gets(str)){

    for(int i = 0; i < strlen(str); i++){

        if(str[i] == ' '){

            printf(" ");

        }

        else{

            for(int j = 0; j < strlen(keyboard); j++){

                if(str[i] == keyboard[j]){

                    str[i] = keyboard[j - 2];

                    printf("%c", str[i]);

                }

                //printf("\n");    

            }

        }

     }

   }

}

 

我試過不寫"printf("\n");",但無法把下行輸入的字串於下行輸出:也試過加上"printf("\n");",但只會印出一個字元,請問能如何修改?

 
#28240: Re:請問大家我這樣的寫法如何修改才能讓下一行讀入的字串輸出至下行?


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.9.74.255]
最後登入時間 :
2024-10-14 22:20:08
e578. 10222 - Decode the Mad man -- UVA | From: [1.200.33.17] | 發表日期 : 2021-11-20 10:16

#include

#include

int main(){

    char str[999999];

    char keyboard[] = "`1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./";

    while(gets(str)){

    for(int i = 0; i < strlen(str); i++){

        if(str[i] == ' '){

            printf(" ");

        }

        else{

            for(int j = 0; j < strlen(keyboard); j++){

                if(str[i] == keyboard[j]){

                    str[i] = keyboard[j - 2];

                    printf("%c", str[i]);

                }

                //printf("\n");    

            }

        }

     }

   }

}

 

我試過不寫"printf("\n");",但無法把下行輸入的字串於下行輸出:也試過加上"printf("\n");",但只會印出一個字元,請問能如何修改?


printf("\n") 要放在for迴圈外面

 
ZeroJudge Forum