30/09/2018, 17:23

Em bị lỗi gì mà khi chạy ct nó ko hiện ra kết quả mong muốn

#include<stdio.h>
#include<string.h>
#include<conio.h>
int main()
{
    // khai bao
    char x[20];
    char y[20];
    char *ptr1,*ptr2;
    int i,n;
    ptr1=&x[0];
    ptr2=&y[0];
    // nhap gia tri
    printf("Enter the string: ");
    scanf("%s",x);

    n = strlen(x)-1;
    //dao nguoc cac ki tu
    for(i=0; i<strlen(x); i++) {
        *(ptr1+i)=*(ptr2+n-i);
    }

    printf("The string is reversed:%s ",y);

    return 0;
}

Đại Dương viết 19:24 ngày 30/09/2018

Ban loi o vong for kia??

Phong Triệu viết 19:25 ngày 30/09/2018

hình như phần preview có vấn đề hay sao mà post của e bị thiếu nhiều quá

nhatlonggunz viết 19:24 ngày 30/09/2018

Anh ơi, khi post bài, anh làm ơn nêu rõ vấn đề của mình, mình đang làm gì, gặp lỗi ra sao, output mong muốn và output hiện tại, … để mọi người dễ dàng giúp hơn

Mong anh rút kinh nghiệm.

Và anh cũng làm quen với Markdown nha, code sẽ dễ đọc hơn.

Làm sao để có thể hiển thị syntax highlighting bằng markdown? Các bạn phải đánh dấu ``` như ví dụ dưới đây Chú ý, dấu ``` được tạo ra bởi nút nằm bên trái số 1 trên bàn phím, nút này sẽ là ~ khi bấm giữ Shift Ví dụ cho C Nội dung: ``` void main() { } ``` Và đừng quên ``` ở cuối Kết quả void main() { } Ví dụ cho Pascal Nội dung: ``` Program HelloWorld; Begin WriteLn('Hello world!') {no ";" is required after the last statement of a block - adding one adds a "null stateme…

nhatlonggunz viết 19:26 ngày 30/09/2018

Và có thể anh sai ở đây :

for(i = 0; i < strlen(x); i++) {
        *(ptr1 + i) = *(ptr2 + n - i);
    }
for(i=0; i<strlen(x); i++) {
        *(ptr2 + i) = *(ptr1 + n - i);
    }

Lý do là vì anh chỉ mới nhập vào ptr1 (x), chứ chưa nhập vào ptr2. Mà lại gán từng phần tử của ptr2 cho ptr => sẽ ra kết quả không như mong muốn vì lúc này ptr2 toàn là giá trị rác

Còn code ở dưới là gán từng phần tử của ptr1 vào ptr2, theo thứ tự nghịch đảo, lúc này ptr2 sẽ giữ nghịch đảo của ptr1

Input:
long

Output:
gnol
Phong Triệu viết 19:24 ngày 30/09/2018

Cám ơn bạn mình sửa được rồi

Mai Anh Dũng viết 19:30 ngày 30/09/2018

@Phong_Trieu sửa như thế nào thế? Nếu câu trả lời của @nhatlonggunz đúng thì accept câu trả lời của @nhatlonggunz, test tính năng chấp nhận câu trả lời.

Bài liên quan
0