Trang 1 / 2 12 LastLast
Hiển thị kết quả từ 1 đến 10 / 11
  1. #1
    Tham gia
    20-06-2009
    Bài viết
    3
    Like
    0
    Thanked 0 Times in 0 Posts

    sắp xếp ngược 1 chuỗi

    mình ko chạy được, pro nào giúp mình với
    <PHP>
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <conio.h>


    int main()
    {
    char *a;
    int i;
    char *x,j;



    printf("nhap chuoi :");
    gets(a);
    printf("\nchoi co do dai la:%d",strlen(a));

    for(i = 0,j = strlen(a) - 1 ; i < (strlen(a)-1)/2, j > (strlen(a)-1)/2; i++,j--)
    {
    strcpy(x,a+i);
    strcpy(a+i,a+j);
    strcpy(a+j,x);
    }
    for(i = 0; i<strlen(a); i++)
    printf("%s",a[i]);


    getch();
    }
    </PHP>
    Quote Quote

  2. #2
    Tham gia
    15-01-2008
    Bài viết
    121
    Like
    0
    Thanked 1 Time in 1 Post
    Trong C++ lúc debug bạn có thể thấy được mã ASCII của 1 ký tự bạn dựa vào đó để sắp xếp.
    Ý tưởng:
    Bạn dùng 2 vòng lặp duyệt lần lượt các ký tự trong chuỗi từ i=0 -> len-1; và j=i+1 -> len;
    kiểm tra mã của nó và hoán vị.
    yêu cầu:
    - hàm tính chiều dài chuỗi.
    - hàm hoán vị.
    - hàm sắp tăng.
    Trước khi muốn viết hàm bạn cần có ý tưởng trước

  3. #3
    Tham gia
    20-02-2009
    Location
    Ninh Bình
    Bài viết
    567
    Like
    0
    Thanked 34 Times in 31 Posts
    Tại sao phải tốn công viết những code đã có sắn trong các hàm của thư viện MS.

    Bạn có thể dùng hàm strrev() để đổi ngược một chuỗi string.

    Nếu không muốn dùng thư viện của C/C++ vì một lý do nào đó, thì có thể copy code này từ mạng:

    http://www.dreamincode.net/code/snippet102.htm

    Code:
    // Reverse string function
    int ReverseString(char *str)
    {
         int x = strlen(str); //takes length of string
         for(int y = x; y >= (x/2)+1; y--) //for loop arranging the string
         {
              swap(str[x-y],str[y-1]); // swaps letters
         }
         return 0; //return

  4. #4
    Tham gia
    15-01-2008
    Bài viết
    121
    Like
    0
    Thanked 1 Time in 1 Post
    Quote Được gửi bởi dq_ninh View Post
    Tại sao phải tốn công viết những code đã có sắn trong các hàm của thư viện MS.

    Bạn có thể dùng hàm strrev() để đổi ngược một chuỗi string.

    Nếu không muốn dùng thư viện của C/C++ vì một lý do nào đó, thì có thể copy code này từ mạng:

    http://www.dreamincode.net/code/snippet102.htm

    Code:
    // Reverse string function
    int ReverseString(char *str)
    {
         int x = strlen(str); //takes length of string
         for(int y = x; y >= (x/2)+1; y--) //for loop arranging the string
         {
              swap(str[x-y],str[y-1]); // swaps letters
         }
         return 0; //return
    Mình thấy ý kiến của dq_ninh không được hay cho lắm mặc dù code thư viện của microsoft và code trên mạng viết rất hay và ngắn gọn nhưng mà ở đây mình chỉ là để học tập và rèn tư duy khả năng lập trình cho chính mình. Nếu như lúc nào cũng ỷ lại vào các thư viện và code trên mạng thì...

  5. #5
    Tham gia
    20-02-2009
    Location
    Ninh Bình
    Bài viết
    567
    Like
    0
    Thanked 34 Times in 31 Posts
    Quote Được gửi bởi minhquang12g View Post
    Mình thấy ý kiến của dq_ninh không được hay cho lắm mặc dù code thư viện của microsoft và code trên mạng viết rất hay và ngắn gọn nhưng mà ở đây mình chỉ là để học tập và rèn tư duy khả năng lập trình cho chính mình. Nếu như lúc nào cũng ỷ lại vào các thư viện và code trên mạng thì...
    Cái này không đúng đâu. Khi viết code, nếu dùng được những hàm của thư viện thì nên dùng, không ai lại tự viết lại hết. Những hàm trong thư viện của MS đã được viết bởi hàng trăm, hàng ngàn kỹ sư trong một thời gian hơn 20 năm, bạn nhắm có thể "tư duy" viết lại hết được chăng.

    Một trong những bí thuật viết code, là tận dụng những hàm của thư viện, và tận dụng được những code đã viết sẵn đã được nhiều người dùng. Tại sao thế? Tại vì những hàm của thư viện, sau bao nhiêu năm "thăng trầm dâu bể", đã được hoàn toàn bug-free, tức là không bị lỗi khi chạy. Còn bạn "tư duy" viết lại thì ôi thôi, tha hồ mà phạm lỗi.

    Nói như bạn, thì khi viết văn, không nên dùng bất cứ một danh từ cũ nào, phải luôn luôn tìm những danh từ mới? Không thể dùng hai từ "Ông Ngoại", "Bà Ngoại" nữa, phải tìm ra hai từ khác để gọi cho nó có "tư duy" chăng?

    Nếu thế, tại sao không "tư duy" viết luôn một cái compiler mới để cạnh tranh với Visual Studio cho nó có ...khí thế?

  6. #6
    Tham gia
    30-04-2009
    Bài viết
    21
    Like
    0
    Thanked 0 Times in 0 Posts
    cái bác này nói lạ ,viết để biết cách tư duy còn nếu có sai thì mình sửa để rút kinh nghiêm cho những bài tương tự ,chứ mà dùng code có sẳn thì nói làm gì tất nhiên là code của thư viên c là phải đúng,nhưng ở đây là mình viết để hiểu chứ không phải là vấn đề làm chạy dc hay là ko

  7. #7
    Tham gia
    24-02-2009
    Bài viết
    140
    Like
    0
    Thanked 1 Time in 1 Post
    cho mình hỏi: thế nào là "Người dùng C" và thế nào là "Người lập trình C"???

  8. #8
    Tham gia
    08-12-2008
    Bài viết
    1
    Like
    0
    Thanked 0 Times in 0 Posts

    Tệ thật ! gau-ict

    chán các bác. không biết có học được điều j không mà chỉ thấy tranh cãi nhau. muốn chở thành một người viết code chuyên nghiệp thì fai tự code chứ ko fai copy -paste -save .

  9. #9
    Tham gia
    06-01-2010
    Bài viết
    216
    Like
    0
    Thanked 12 Times in 10 Posts

    Bàn cãi....

    Theo mình thì nên có ý tưởng rồi tự mình viết chương trình để rèn luyện chứ không phải hoc thuộc lòng như thế!

  10. #10
    Tham gia
    17-01-2010
    Bài viết
    10
    Like
    0
    Thanked 0 Times in 0 Posts
    Mình mới vô ngành này nên không hiểu rõ lắm ngôn ngữ của các bạn. có ai giúp mình bài cơ bản này không?
    //chuyen tu he co so 10 sang he co so 2//
    #include<iostream>
    #include<conio.h>
    using namespace std;
    void main()
    {
    int a;cout<<"nhap so: ";cin>>a;
    int i;i=0;
    while(i<a*10)
    {
    i=a%2;
    a=a/2;
    cout<<i;
    }
    getch();
    }
    Mình xuất ra được rồi, nhưng không biết cách nào đảo ngược lại các chữ số mình mới xuất ra. Cám ơn các bạn trước nha.

Trang 1 / 2 12 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •