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ố 14 kết quả

Đề tài: Kiểm tra việc nhập passowrd. Xin sửa lỗi giùm!

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

    Question Kiểm tra việc nhập passowrd. Xin sửa lỗi giùm!

    Đề bài : Viết chưong trình kiểm tra password nhập vào quá 3 lần thì thôi.Tớ làm thế này nhưng không đúng .Mong các bạn sửa giúp với.
    #include<stdio.h>
    void main()
    {
    int count;
    char n[30];
    count=0;
    do
    {
    printf("Hay nhap vao Password:");
    scanf("%s",&n);
    count=count+1;
    }
    while(n!="m24fdn"&& count<3);
    }

  2. #2
    Ngày gia nhập
    10 2009
    Nơi ở
    Close All
    Bài viết
    993

    Trích dẫn Nguyên bản được gửi bởi drak77 Xem bài viết
    Đề bài : Viết chưong trình kiểm tra password nhập vào quá 3 lần thì thôi.Tớ làm thế này nhưng không đúng .Mong các bạn sửa giúp với.
    thêm fflush(stdin); vào trước scanf("%s",&n); là ok thôi

  3. #3
    Ngày gia nhập
    01 2010
    Nơi ở
    до свидания!
    Bài viết
    1,766

    Trích dẫn Nguyên bản được gửi bởi tauit_dnmd Xem bài viết
    thêm fflush(stdin); vào trước scanf("%s",&n); là ok thôi
    Cậu này nhanh nhảu quá, nhưng cũng "quá đoảng"....Có OK không?

  4. #4
    Ngày gia nhập
    10 2009
    Nơi ở
    Close All
    Bài viết
    993

    Trích dẫn Nguyên bản được gửi bởi peterdrew Xem bài viết
    Cậu này nhanh nhảu quá, nhưng cũng "quá đoảng"....Có OK không?
    SORRY.
    Code đã test khĩ càng rồi đây
    PHP Code:
    #include<stdio.h>
    #include<conio.h>
    void main()
    {
    int count;
    char n[30];
    count=0;
    do
    {
    printf("Hay nhap vao Password:");
    scanf("%s",&n);
    count=count+1;
    }
    while(
    strcmp(n,"m24fdn")!=0&& count<3);
    getch();

    -->scanf("%s",n); vì kiểu chuỗi khi nhập không cần lấy dịa chỉ
    Đã được chỉnh sửa lần cuối bởi tauit_dnmd : 03-03-2010 lúc 11:14 PM.

  5. #5
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    demo

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

    char *pass="cdcv";
    void nhappas(char *xau,int max=6)
    {
        
    char ch='a',i=0;
        while (
    ch!=0xD)
        {
            
    ch=getch();
            if (
    i<max&&(isalpha(ch)||isdigit(ch))) xau[i++]=ch,printf("*");
            if (
    ch==8printf("\b"),(i==0)?1:i--; //nếu là nút xóa thì bỏ đi 1 kí tự và 1 dấu *
        
    }
        
    xau[i]=NULL;
    }
    void main()
    {
        
    char xau[10];
        
    int t=0;
        
    printf("yeu cau ban nhap pass : ");
        while(
    t++<3)
        {
                
    nhappas(xau);
                if (!
    stricmp(xau,pass)) break;
                else 
    printf(" Sai pass\n");
        }
        if (!
    stricmp(xau,pass)) 
            
    printf("Nhap dung pass rồi");//làm gì thì làm

        

        
        //system("pause");

    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

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

    Mặc định Kiểm tra việc nhập passowrd. Xin sửa lỗi giùm!

    Cám ơn tất cả mọi ngừoi đã giúp !.

  7. #7
    Ngày gia nhập
    02 2010
    Nơi ở
    Thái Nguyên
    Bài viết
    17

    Trích dẫn Nguyên bản được gửi bởi langman Xem bài viết
    demo

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

    char *pass="cdcv";
    void nhappas(char *xau,int max=6)
    {
        
    char ch='a',i=0;
        while (
    ch!=0xD)
        {
            
    ch=getch();
            if (
    i<max&&(isalpha(ch)||isdigit(ch))) xau[i++]=ch,printf("*");
            if (
    ch==8printf("\b"),(i==0)?1:i--; //nếu là nút xóa thì bỏ đi 1 kí tự và 1 dấu *
        
    }
        
    xau[i]=NULL;
    }
    void main()
    {
        
    char xau[10];
        
    int t=0;
        
    printf("yeu cau ban nhap pass : ");
        while(
    t++<3)
        {
                
    nhappas(xau);
                if (!
    stricmp(xau,pass)) break;
                else 
    printf(" Sai pass\n");
        }
        if (!
    stricmp(xau,pass)) 
            
    printf("Nhap dung pass rồi");//làm gì thì làm

        

        
        //system("pause");

    em thử chạy thì vẫn thấy sai xót anh ơi
    -------Trên ải gió, dưới ải hoa--------
    Trăng soi Nhĩ Hải, tuyết loà Thương Sơn

  8. #8
    Ngày gia nhập
    06 2009
    Nơi ở
    ha noi
    Bài viết
    1

    Chủ topic tham khảo
    PHP Code:
    #include<stdio.h>
    #include<conio.h>
    main()
    {
    int count;
    char n[30];
    count=0;

    t:printf("Hay nhap vao Password:");
    scanf("%s",n);
    count=count+1;

    if(
    strcmp(n,"m24fdn")!=0&& count<3)
    {
        
    printf("Sai pass !!!  Hay nhap lai   ( ban con %d lan nhap tiep)\n",3-count);
        goto 
    t;
    }
    if((
    count==3)&&strcmp(n,"m24fdn")!=0)
    {
        
    printf("Qua 3 lan nhap sai.Exit\n");
        exit(
    1);
    }
    else 
    printf("Dung pass\n");
    getch();



  9. #9
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,007

    Trích dẫn Nguyên bản được gửi bởi prime Xem bài viết
    em thử chạy thì vẫn thấy sai xót anh ơi
    sai ở dây thế ? các hàm string và is... chưa được định nghĩa à?
    bạn thêm string.h và ctype.h vô.
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  10. #10
    Ngày gia nhập
    09 2009
    Bài viết
    240

    Trích dẫn Nguyên bản được gửi bởi drak77 Xem bài viết
    Đề bài : Viết chưong trình kiểm tra password nhập vào quá 3 lần thì thôi.Tớ làm thế này nhưng không đúng .Mong các bạn sửa giúp với.
    Bạn có thể tham khảo ở đây. Bạn có thể bỏ đi các hàm isalpha, isdigit và strcmp nếu sử dụng chúng trong string.h. Mình viết ra nhằm trao đổi với bạn một chút về kỹ thuật code thôi

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

    char between(char minchar maxchar ch)
    {
        return 
    min <= ch && ch <= max;
    }

    char isalpha(char ch)
    {
        return 
    between('a','z',ch) || between('A','Z',ch);
    }

    char isdigit(char ch)
    {
        return 
    between('0','9',ch);
    }

    char validchar(char ch)
    {
        return 
    isalpha(ch) || isdigit(ch);
    }

    void inputpass(char *pass)
    {
        
    char chpos 0
        do
            {
                
    ch getch();
                if (
    validchar(ch)) 
                    {
                        
    printf("%c",'*');
                        
    pass[pos ++] = ch;
                    }
                else 
                    if (
    ch == '\b' && pos)
                        {
                            
    printf("%c%c%c",ch,32,ch);
                            
    pos --;
                        }
            } while (
    ch != '\r');
        
    pass[pos] = 0;
    }

    char strcmp(const char *str1, const char str2)
    {
        
    char i 00;
        while (
    str1[i] && str2[j] && str1[i] == str2[j]) { i++; j++;}
        return 
    str1[i] - str2[j];
    }

    void backdelete(const char *pass)
    {
        while (*
    pass
            {
                
    printf("%c%c%c",'\b',32,'\b');
                
    pass ++;
            }
    }

    char testpass(const char *sampleint time 3)
    {    
        
    char *pass = (char *) malloc(100);
        
    char notok
        
    printf("\nNhap password: ");
        do
            {
                
    time --;
                
    inputpass(pass);
                
    notok strcmp(samplepass);
                if (
    notokbackdelete(pass);
            } while (
    notok && time);
        
    free (pass);
        return !
    notok;
    }

    void main()
    {
        if (
    testpass("onminh")) 
            
    printf("\nBan nhap dung password!\n");
        else
            
    printf("\nBan nhap sai password!\n");

    Đã được chỉnh sửa lần cuối bởi onminh : 05-03-2010 lúc 11:50 AM.

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

  1. Hàm trong C++ Mới Nhập môn C++ nhờ các bạn giúp giùm-
    Gửi bởi thekiller trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 30-03-2012, 03:53 PM
  2. Bài tập C Giải giùm em bài: Tìm dãy con lớn nhất trong dãy số nguyên cho trước
    Gửi bởi thangzero trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 29-11-2011, 11:49 PM
  3. hướng dẫn giùm em về cách nhập thông tin vao dslk đơn
    Gửi bởi vanmui trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 05-11-2011, 02:25 AM
  4. Cách nhập một mảng trên C++, mong các bạn giải đáp giùm?
    Gửi bởi auduongca trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 10-05-2009, 02:16 PM
  5. Sửa code giùm, tìm số lớn nhất...
    Gửi bởi shivabt trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 11-03-2009, 04:32 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