Trang ChínhTrang Chính  CalendarCalendar  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  

Hãy sử dụng FireFox để web hiển thị tốt hơn!


Share | 
 

 Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
bueno
Vịt bầu
Vịt bầu
avatar


Nam Tổng số bài gửi : 7
Cảm ơn : 14
Danh vọng : 0
Join date : 04/01/2011
Age : 25

Bài gửiTiêu đề: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   Wed Mar 02, 2011 12:07 pm

Wed Mar 02, 2011 12:07 pm » Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)
Code:
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <string.h>
#define Max 101
typedef char SMAX[Max];
SMAX *Nhapmang(int N);
char *ChuoiMax(SMAX *S,int N);
void main()
{
    int n;
    SMAX *s;
/* O day,ta se hieu la *s la mang 1 chieu co kieu la SMAX
Tuc cac phan tu cua mang nay co kieu SMAX, moi phan tu la mot chuoi */
    do
    {
        printf("Nhap so chuoi: ");
        scanf("%d",&n);
    }while(n<1||n>Max);
    s=Nhapmang(n);
    printf("Chuoi max la:\n%s\n",ChuoiMax(s,n));
    getch();
}
SMAX *Nhapmang(int N)
{
    SMAX *tmp;
    tmp=(SMAX *)malloc(N*sizeof(SMAX));
    for(int i=0;i<N;i++)
    {
        printf("Nhap chuoi %d: ",i+1);
        scanf("%s",tmp+i);
    }
    return tmp;
}
char *ChuoiMax(SMAX *S,int N)
{
    char *tmp;
    int len=0;
//bien tmp thanh chuoi dai Max
    tmp=(char *)malloc(Max*sizeof(char));
    strcpy(tmp,"");
//duyet mang S de tim chuoi Max
    for(int i=0;i<N;i++)
        if(len<strlen(S[i]))
        {
            strcpy(tmp,S[i]);
            len=strlen(S[i]);
        }
    return tmp;
}


bueno

Về Đầu Trang Go down
Xem lý lịch thành viên
Tboy
Cá voi
Cá voi
avatar


Nam Tổng số bài gửi : 178
Cảm ơn : 413
Danh vọng : 4
Join date : 03/01/2011
Age : 25
Đến từ : TPHCM

Bài gửiTiêu đề: Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   Wed Mar 02, 2011 7:00 pm

Wed Mar 02, 2011 7:00 pm » Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)
crying Chú Minh post bài làm súc động wa' đi mất!!!


Tboy



Về Đầu Trang Go down
Xem lý lịch thành viên http://taplaptrinh.forumvi.com
Tboy
Cá voi
Cá voi
avatar


Nam Tổng số bài gửi : 178
Cảm ơn : 413
Danh vọng : 4
Join date : 03/01/2011
Age : 25
Đến từ : TPHCM

Bài gửiTiêu đề: Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   Tue Mar 08, 2011 8:44 pm

Tue Mar 08, 2011 8:44 pm » Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)
Thầy nói phải dùng typedef mới ra mà sao dùng char ** cũng ok ruj`!!!!

Code:
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#include <string.h>
#define Max 101
char **Nhapmang(int N);
char *ChuoiMax(char **S,int N);
void main()
{
    int n;
    char **s;
/* O day,ta se hieu la *s la mang 1 chieu co kieu la SMAX
Tuc cac phan tu cua mang nay co kieu SMAX, moi phan tu la mot chuoi */
    do
    {
        printf("Nhap so chuoi: ");
        scanf("%d",&n);
    }while(n<1||n>Max);
    s=Nhapmang(n);
    printf("Chuoi max la:\n%s\n",ChuoiMax(s,n));
    getch();
}
char **Nhapmang(int N)
{
    char **t;
    t=(char **)malloc(N*sizeof(char *));
    for(int i=0;i<N;i++)
        t[i]=(char *)malloc(Max*sizeof(char ));
    for(int d=0;d<N;d++)
    {
        printf("Nhap dong %d: ",d+1);
        fflush(stdin);
        gets(t[d]);
    }
    return t;
}
char *ChuoiMax(char **S,int N)
{
    char *tmp;
    int len=0;
//bien tmp thanh chuoi dai Max
    tmp=(char *)malloc(Max*sizeof(char));
    strcpy(tmp,"");
//duyet mang S de tim chuoi Max
    for(int i=0;i<N;i++)
        if(len<strlen(S[i]))
        {
            strcpy(tmp,S[i]);
            len=strlen(S[i]);
        }
    return tmp;
}


Tboy



Về Đầu Trang Go down
Xem lý lịch thành viên http://taplaptrinh.forumvi.com
love_stormHL
Gà choai
Gà choai
avatar


Nam Tổng số bài gửi : 20
Cảm ơn : 22
Danh vọng : 0
Join date : 02/03/2011
Age : 27
Đến từ : Vũng Tàu

Bài gửiTiêu đề: Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   Wed Mar 09, 2011 12:08 am

Wed Mar 09, 2011 12:08 am » Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)
đơn giản thôi. bởi vì dùng SMAX = char* mà
vì khi khai báo SMAX[MAX] đã đồng nghĩa với kiểu mảng chuỗi rồi


love_stormHL

Về Đầu Trang Go down
Xem lý lịch thành viên
Tboy
Cá voi
Cá voi
avatar


Nam Tổng số bài gửi : 178
Cảm ơn : 413
Danh vọng : 4
Join date : 03/01/2011
Age : 25
Đến từ : TPHCM

Bài gửiTiêu đề: Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   Wed Mar 09, 2011 5:04 pm

Wed Mar 09, 2011 5:04 pm » Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)
Không hỉu ở chỗ thầy nói "phải dùng typedef mới làm được" đó!!! Có lý do nào cho sự cần thiết của typedef lúc này ko?


Tboy



Về Đầu Trang Go down
Xem lý lịch thành viên http://taplaptrinh.forumvi.com
Sponsored content




Bài gửiTiêu đề: Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)   

» Re: Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)


Sponsored content

Về Đầu Trang Go down
 

Tìm chuỗi dài nhất - (Chuỗi- Xâu ký tự)

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: Cơ sở lập trình 1 :: Bài tập thực hành-