Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 20 kết quả

Đề tài: Bài tập C++! Cắt ký tự đầu của xâu rùi gắn vào cuối xâu! Hủy ký tự của xâu???

  1. #1
    Ngày gia nhập
    03 2009
    Nơi ở
    my home ^^
    Bài viết
    61

    Exclamation Bài tập C++! Cắt ký tự đầu của xâu rùi gắn vào cuối xâu! Hủy ký tự của xâu???

    Em có 1 số bài tập sau:
    1. Cắt ký tự đầu của xâu rùi gắn vào cuối xâu!
    2. Hủy ký tự của xâu với ký tự nhập từ bàn phím.(bài này e chỉ thay thế đc các ký tự cần xóa nhug7 ko tài nào làm nó giảm đi dc:
    code:
    Code:
    void HuyKT( Chuoi a, char kt)
    {
    	int i=0,l=CDai(a);
    	while (a[i] == kt )
    	{
    		for(int j=i;j<l;j++)
    			if(a[j]==kt)
    				a[j]=a[j+1];
    			else
    				a[i]=a[i+1];
    		i++;
    	}		
    }
    3. Ghép xâu b vào sau xâu a.
    4. So sánh 2 xâu theo thứ tự từ điển.(Bài này e ko hỉu lắm)
    5. Chèn xâu S vào xâu T tại vị trí k nhập từ bàn phím.(Bài này e làm dc nhưng code khá dài, ai có cách nhanh xin chỉ giúp e)

    Mong các huynh giúp đệ, nếu có thể thì cho đệ xin code, còn ko thì chỉ giúp đệ cách giải 1 cách tổng quát :P!!!!!
    M|R.S!!!!!!!!!!!

  2. #2
    Ngày gia nhập
    03 2009
    Nơi ở
    Hà Nội
    Bài viết
    74

    thuật toán của bạn sai rồi.
    bạn hãy cho 1 vòng for i chạy từ đầu đến cuối. khi gặp 1 kí tự bằng a thì cho thêm 1 vòng j chạy từ i+1 đến cuối, rồi gán cho chuoi[j]=chuoi[j]+1;
    cuối cùng cho chuoi[strlen(chuoi)]='\0';

    http://ebook.here.vn
    trang web cung cấp đề thi,tài liệu ôn thi đại học.

  3. #3
    Ngày gia nhập
    03 2009
    Nơi ở
    my home ^^
    Bài viết
    61

    Trích dẫn Nguyên bản được gửi bởi minhgiang_hedspi Xem bài viết
    thuật toán của bạn sai rồi.
    bạn hãy cho 1 vòng for i chạy từ đầu đến cuối. khi gặp 1 kí tự bằng a thì cho thêm 1 vòng j chạy từ i+1 đến cuối, rồi gán cho chuoi[j]=chuoi[j]+1;
    cuối cùng cho chuoi[strlen(chuoi)]='\0';
    Bạn có thể bik code jùm mình đc ko. Ý tưởng thì đã hỉu nhưg sao vik hoài ko dc! :P
    M|R.S!!!!!!!!!!!

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

    C++ Code:
    1. //1. Cắt ký tự đầu của xâu rùi gắn vào cuối xâu!
    2. void catGhep(char* s)
    3. {
    4.     char c=s[0];
    5.     int len=strlen(s);
    6.     for(int i=0;i<(len-1);i++)
    7.         s[i]=s[i+1];
    8.     s[len-1]=c;
    9. }

  5. #5
    Ngày gia nhập
    03 2009
    Nơi ở
    my home ^^
    Bài viết
    61

    Trích dẫn Nguyên bản được gửi bởi ducthiem90 Xem bài viết
    C++ Code:
    1. //1. Cắt ký tự đầu của xâu rùi gắn vào cuối xâu!
    2. void catGhep(char* s)
    3. {
    4.     char c=s[0];
    5.     int len=strlen(s);
    6.     for(int i=0;i<(len-1);i++)
    7.         s[i]=s[i+1];
    8.     s[len-1]=c;
    9. }
    Thanks pro nhìu!
    Tiện đây xin cho hỏi làm cách nào để reset chuỗi về như dạg ban đầu mình nhập. Sau 1 vài thao tác trên chuỗi ban đầu thì nó lấy lun cái chuỗi vừa làm xong để thực hiện tiếp mà ko chịu trả về lại dạg ban đầu >"<!
    M|R.S!!!!!!!!!!!

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

    Mặc định Bài tập C++! Cắt ký tự đầu của xâu rùi gắn vào cuối xâu! Hủy ký tự của xâu???

    C++ Code:
    1. //Hủy ký tự của xâu với ký tự nhập từ bàn phím.
    2. void huyKT(char* s,char kt)
    3. {
    4.     int len=strlen(s);
    5.     for(int i=0;i<len;i++)
    6.         if(s[i]==kt)
    7.         {
    8.             for(int j=i;j<(len-1);j++)
    9.                 s[j]=s[j+1];
    10.             s[len-1]=0;
    11.             len--;
    12.         }
    13. }

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

    Tiện đây xin cho hỏi làm cách nào để reset chuỗi về như dạg ban đầu mình nhập. Sau 1 vài thao tác trên chuỗi ban đầu thì nó lấy lun cái chuỗi vừa làm xong để thực hiện tiếp mà ko chịu trả về lại dạg ban đầu >"<!
    C++ Code:
    1. char* catGhep2(char* s)
    2. {
    3.     char* kq=new char[strlen(s)];
    4.     strcpy(kq,s+1);
    5.     kq[strlen(s)-1]=s[0];
    6.     kq[strlen(s)]=0;
    7.     return kq;
    8. }

  8. #8
    Ngày gia nhập
    03 2009
    Nơi ở
    my home ^^
    Bài viết
    61

    Trích dẫn Nguyên bản được gửi bởi ducthiem90 Xem bài viết
    C++ Code:
    1. char* catGhep2(char* s)
    2. {
    3.     char* kq=new char[strlen(s)];
    4.     strcpy(kq,s+1);
    5.     kq[strlen(s)-1]=s[0];
    6.     kq[strlen(s)]=0;
    7.     return kq;
    8. }
    Bài này có thể ko dùng đến con trỏ dc ko huynh!
    Đệ đag làm bài tập về chuỗi thui!
    M|R.S!!!!!!!!!!!

  9. #9
    Ngày gia nhập
    03 2009
    Nơi ở
    my home ^^
    Bài viết
    61

    Trích dẫn Nguyên bản được gửi bởi ducthiem90 Xem bài viết
    C++ Code:
    1. //Hủy ký tự của xâu với ký tự nhập từ bàn phím.
    2. void huyKT(char* s,char kt)
    3. {
    4.     int len=strlen(s);
    5.     for(int i=0;i<len;i++)
    6.         if(s[i]==kt)
    7.         {
    8.             for(int j=i;j<(len-1);j++)
    9.                 s[j]=s[j+1];
    10.             s[len-1]=0;
    11.             len--;
    12.         }
    13. }
    Code của bạn sai ruì, bạn thử nhập dãy ký tự nhừ sau xem: aassdd , đảm bảo ko xóa hết dc.
    Đây là code mình vừa làm, xem xong các bác cho e xin ý kiến, mà sao ko ai help e mấy bài kai vậy >"<
    Code:
    void HuyKT( Chuoi a, char kt)
    {
    	int i=0,l=CDai(a);
    	while (a[i]!=NULL)
    	{
    		if(a[i]==kt)
    		{
    			int j;
    			for(j=i+1;a[j]!=NULL;j++)
    				a[j-1]=a[j];
    			a[j-1]=NULL;
    		}
    		else
    			i++;
    	}
    }
    M|R.S!!!!!!!!!!!

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

    Code của bạn sai ruì, bạn thử nhập dãy ký tự nhừ sau xem: aassdd , đảm bảo ko xóa hết dc.
    uh.mình quên mất copy cái bak.sủa lại nè
    C++ Code:
    1. void huyKT(char* s,char kt)
    2. {
    3.     int len=strlen(s);
    4.     for(int i=0;i<len;i++)
    5.         if(s[i]==kt)
    6.         {
    7.             for(int j=i;j<(len-1);j++)
    8.                 s[j]=s[j+1];
    9.             s[len-1]=0;
    10.             len--;
    11.             i--;
    12.         }
    13. }

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

  1. Mọi người ai làm Database bán hàng rùi chỉ mỉnh vói nhé
    Gửi bởi trantran trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 1
    Bài viết cuối: 15-10-2010, 12:02 AM
  2. Lập trình C++ Trộn 2 mảng a và b rùi sắp xếp thành mảng c tăng dần
    Gửi bởi trungthuan trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 9
    Bài viết cuối: 03-07-2010, 01:47 PM
  3. Tính toán rùi xuất ra như thế nào?
    Gửi bởi tesulakata trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 12
    Bài viết cuối: 20-05-2010, 11:01 PM
  4. sáng mai thi rùi ai chỉ mình bài dễ này đi
    Gửi bởi thanhle_uit trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 11-02-2009, 08:37 PM
  5. Sửa giùm bài C++ của em, sắp nộp rùi mà chạy kiểu gì
    Gửi bởi dinhnhan trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 3
    Bài viết cuối: 16-05-2007, 01:05 AM

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