Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Chuyển một chuỗi thành chuỗi có các chữ cái đầu được viết hoa?

  1. #1
    Ngày gia nhập
    12 2008
    Bài viết
    2

    Mặc định Chuyển một chuỗi thành chuỗi có các chữ cái đầu được viết hoa?

    Ví dụ:
    " nGuyEn vAN a "
    --> "Nguyen Van A"

    PHP Code:
    #include <stdio.h>
    #include <string.h>
    #include <conio.h>

    #include <ctype.h>


    char *xoaKhoangTrang(char *s)
    {
        
    char *p;
        while (
    strstr(s,"  "))
            
    memmove(pp+1strlen(s) - (s));
        if (
    s[0] == ' ')
            
    memmove(ss+1strlen(s) - 1);
        if (
    s[strlen(s)-1] == ' ')
            
    s[strlen(s)-1] = 0;
        return 
    s;
    }

    char *vietHoaKyTuDau(char *s)
    {
        
    int i,n=strlen(s);
        if (
    islower(s[0])) toupper(s[0]);
        if (
    isupper(s[n])) tolower(s[n]);
        for (
    i=1;i<n;i++)
        {
            if(
    s[i]==' ' && isalpha(s[i+1]) && islower(s[i+1]))
                
    toupper(s[i+1]);
            if(
    s[i]==' ' && isalpha(s[i-1]) && isupper (s[i-1]))
                
    tolower(s[i-1]);
            if(
    isalpha(s[i-1]) && isalpha(s[i+1]) && isupper(s[i]))
                
    tolower(s[i]);
        }
        return 
    s;
    }

    main()
    {
        
    char *s;
        
    printf("\nNhap chuoi : ");
        
    gets(s);
        
    xoaKhoangTrang(s);
        
    //7vietHoaKyTuDau(s);
        
    printf("\nChuoi sau khi duoc xu ly : ");
        
    puts(s);
        
    getch();

    Đây là code của tớ, phần xóa khoảng trắng là của nerverland, tớ chỉ đổi tên lại. Còn phần Viết hoa ký tự đầu thì ko biết sai chỗ nào, bạn nào biết thì xin giúp tớ, rất cám ơn.

  2. #2
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    Đây là code của tớ, phần xóa khoảng trắng là của nerverland, tớ chỉ đổi tên lại. Còn phần Viết hoa ký tự đầu thì ko biết sai chỗ nào, bạn nào biết thì xin giúp tớ, rất cám ơn.
    Viết hoa thì đầu tiên bạn phải lower toàn bộ các kí tự hoa trong chuỗi rồi, duyệt chuỗi kiểm tra kí tự sau space thì upper lên. Làm như trên của bạn không ổn.

  3. #3
    Ngày gia nhập
    11 2008
    Nơi ở
    Bình Dương
    Bài viết
    37

    Trích dẫn Nguyên bản được gửi bởi QuangHoang Xem bài viết
    Viết hoa thì đầu tiên bạn phải lower toàn bộ các kí tự hoa trong chuỗi rồi, duyệt chuỗi kiểm tra kí tự sau space thì upper lên. Làm như trên của bạn không ổn.
    Thiếu 1 cái , phải up kí tự đầu tiên của chuỗi nữa , kí tự đầu tiên của chuỗi không có khoản trắng ở trước
    public bool love(person anh, person em)
    {
    if(love(em,anh))
    return true;
    }

  4. #4
    Ngày gia nhập
    12 2008
    Bài viết
    2

    PHP Code:
    #include <stdio.h>
    #include <string.h>
    #include <conio.h>

    #include <ctype.h>


    char *xoaKhoangTrang(char *s)
    {
        
    char *p;
        while (
    strstr(s,"  "))
            
    memmove(pp+1strlen(s) - (s));
        if (
    s[0] == ' ')
            
    memmove(ss+1strlen(s) - 1);
        if (
    s[strlen(s)-1] == ' ')
            
    s[strlen(s)-1] = 0;
        return 
    s;
    }

    char *vietHoaKyTuDau(char *s)
    {
        
    int i,n=strlen(s);
        
    printf("\nN=%d",n);
        for (
    i=0;i<n;i++)
        {
            
    s[i]=tolower(s[i]);
        }
        
    s[0]=toupper(s[0]);
        for (
    i=0;i<n;i++)
        {
            if (
    isalpha(s[i]) && isspace(s[i-1])) s[i]=toupper(s[i]);
        }
        return 
    s;
    }

    main()
    {
        
    char *s;
        
    printf("\nNhap chuoi : ");
        
    gets(s);
        
    xoaKhoangTrang(s);
        
    vietHoaKyTuDau(s);
        
    printf("\nChuoi sau khi duoc xu ly : ");
        
    puts(s);
        
    getch();

    tớ fix lại rồi nhưng vẫn ko đc T_T.
    Nếu nhập :"aa bb cc" thì nó sẽ thành "Aa Bb Cc"
    Nếu nhập:" aa bb cc " thì nó báo lỗi T____T
    Hình như nhập chuỗi dài quá thì ko đc ?? Vậy nếu mình muốn nhập chuỗi với độ dài lớn hơn (32 ký tự chẳng hạn) thì phải làm sao ?
    Đã được chỉnh sửa lần cuối bởi VaanGogh : 02-04-2009 lúc 10:23 AM.

Các đề tài tương tự

  1. Thay đổi icon của chuột khi chuột di chuyển vào vùng dialog
    Gửi bởi kideltn trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 13
    Bài viết cuối: 07-06-2013, 04:34 PM
  2. Lấy handle window dưới chuột khi chuột di chuyển
    Gửi bởi vakt4793 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 05-04-2013, 04:36 AM
  3. làm sao chuyển chuổi tiền tệ sang chuỗi số
    Gửi bởi thuan trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 7
    Bài viết cuối: 14-01-2012, 07:48 PM
  4. Chuyển chuỗi tiếng việt sang chuỗi số và ngược lại
    Gửi bởi saonam trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 18-06-2011, 07:28 AM
  5. Trả lời: 7
    Bài viết cuối: 21-03-2011, 09:59 PM

Quyền hạn của bạn

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