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

Đề tài: Viết chương trình có giao diện menu: Tính giai thừa, Quản lí học sinh,..

  1. #1
    Ngày gia nhập
    05 2011
    Bài viết
    3

    Mặc định Viết chương trình có giao diện menu: Tính giai thừa, Quản lí học sinh,..

    Hiện tại em đang gặp một bài tập c mà mãi k làm được. Nhờ anh em trên forum giúp đỡ hướng giải quyết và cách làm nhé.

    Thanks nhiều.

    Đề bài:

    Viết chương trình có giao diện menu như sau:

    1- Tính giai thừa

    2- Quản lí học sinh
    a- Nhap DSHS
    b- IN dshs
    c- Tìm kiếm hs

    3- Thoát

    ----------------------
    Cho biết bảng hs bao gồm MaHS,HoTen,Tuoi


    Ai giúp em với :x

  2. #2
    Ngày gia nhập
    01 2011
    Nơi ở
    -Mountain-
    Bài viết
    767

    Bạn đã làm tới đâu rồi, vướng mắc, sai sót ở điểm nào có thể nói rõ đc chứ :S
    Hay là hỏi code toàn bài luôn ? Tặng bạn cái menu còn lại tự gõ nốt nhá

    C Code:
    1. #include <stdio.h>
    2.  
    3. void menu ();
    4.  
    5. void giaithua ();
    6.  
    7. void nhaphs ();
    8. void inhs ();
    9. void timhs ();
    10.  
    11. void giaithua ()
    12. {
    13.     printf ("Tinh gt");
    14. }
    15.  
    16.  
    17. void nhaphs ()
    18. {
    19.     printf ("Nhap");
    20. }
    21.  
    22.  
    23. void inhs ()
    24. {
    25.     printf ("In");
    26. }
    27.  
    28. void timhs ()
    29. {
    30.     printf ("Tim");
    31. }
    32.  
    33.  
    34. void menu ()
    35. {
    36.     printf ("-------------- MENU -------------\n");
    37.     printf ("--  1- Tinh GT                  -\n");
    38.     printf ("--  2- Quan ly hs               -\n");
    39.     printf ("--  3- Thoat                    -\n");
    40.     printf ("---------------------------------\n");
    41.  
    42.     char a;
    43.     do{
    44.         printf ("\n");
    45.         printf ("Lua chon cua ban: ");
    46.         a = getch ();
    47.         switch (a - '0')
    48.         {
    49.             case 1:
    50.                 giaithua();
    51.                 break;
    52.             case 2:
    53.                 printf ("\n\t Quan Ly Hoc Sinh\n");
    54.                 printf ("--- a - Nhap hs    \n");
    55.                 printf ("--- b - In hs      \n");
    56.                 printf ("--- c - Tim hs     \n");
    57.                 char b;
    58.                 do{
    59.                     printf ("nhap lua chon: ");
    60.                     b = getch ();
    61.                     switch (b)
    62.                     {
    63.                         case 'a':
    64.                             nhaphs();
    65.                             break;
    66.                         case 'b':
    67.                             inhs();
    68.                             break;
    69.                         case 'c':
    70.                             timhs();
    71.                             break;
    72.                         default:
    73.                             printf ("Nhap sai");
    74.                     }
    75.                 }while (b<'a' || b>'c');
    76.  
    77.         }
    78.     }while ('1'>a || a>'3');
    79. }
    80.  
    81. int main ()
    82. {
    83.     menu();
    84.     return 0;
    85. }
    Đã được chỉnh sửa lần cuối bởi beautifulsoul84hung : 04-09-2011 lúc 08:54 PM.

  3. #3
    Ngày gia nhập
    05 2011
    Bài viết
    3

    ..................................................
    Đã được chỉnh sửa lần cuối bởi Timeless : 04-09-2011 lúc 09:43 PM.

  4. #4
    Ngày gia nhập
    05 2011
    Bài viết
    3

    Code:
    #include <stdio.h>
    #include <ctype.h>
    #include <mem.h>
    #include <string.h>
    
    #define MAX 100
    
    
    void giaithua()
    {
    long FACT(int n);
    void main()
    
    {
        long kq1;
        int n;
        printf("Nhap n=");
        scanf("%d",&n);
        kq1=FACT(n);
        printf("Ket qua %d!=%ld",n,kq1);
        getch();
    }
    long FACT(int n)
    {
        if(n==0)
            return 1;
        else
            return n*FACT(n-1);
    }
    }
    
    
    
    struct danhsach{
      char mahs[5];
      char hoten[35];
      int tuoi[2];
    
    } danhsach[MAX];
    int n = 0;
    
    void nhapdshs()
    {
      char mahs[5], tmp[3];
      int i;
      int tuoi[2];
      do {
        printf("\nCho biet ma so HS : ");
        gets(mahs);
        if (strlen(mahs))
        {
          strcpy(danhsach[n].mahs, mahs);
          printf("\nCho biet ho ten : ");
          gets(danhsach[n].hoten);
          printf("\nCho biet tuoi : ");
          for (i=0; i<3; i++)
          {
            scanf("%f", &tuoi[i]);
            danhsach[n].tuoi[i] = tuoi[i];
          }
          gets(tmp);
          n++;
        }
      } while (strlen(mahs));
    }
    
    
    void inhs()
    {
    
      int i = 0, found = 0;
        while (i<n)
          {
             printf("\nMa so hs : %s", danhsach[i].mahs);
             printf("Ho va ten : %s", danhsach[i].hoten);
             printf("Tuoi : %f", danhsach[i].tuoi);
             found = 1;
             break;
          }
    
    }
    
    
    
    void timkiemhs()
    {
      char mahs[5];
      int i = 0, found = 0;
      printf("\nCho biet ma so hs : ");
      gets(mahs);
      if (strlen(mahs))
        while (i<n)
          if (stricmp(danhsach[i].mahs, mahs) == 0)
          {
             printf("\nMa so hs : %s", danhsach[i].mahs);
             printf("\nHo va ten : %s", danhsach[i].hoten);
             printf("\nTuoi : %f", danhsach[i].tuoi);
             found = 1;
             break;
          }
          else
            i++;
      if (!found)
        printf("\nKhong tim thay!!!");
    }
    
    
    
    
    void menu ()
    {
        printf ("-------------- MENU -------------\n");
        printf ("--  1- Tinh GT                  -\n");
        printf ("--  2- Quan ly hs               -\n");
        printf ("--  3- Thoat                    -\n");
        printf ("---------------------------------\n");
    
        char a;
        do{
            printf ("\n");
            printf ("Lua chon cua ban: ");
            a = getch ();
            switch (a - '0')
            {
                case 1:
                    giaithua();
                    break;
                case 2:
                    printf ("\n\t Quan Ly Hoc Sinh\n");
                    printf ("--- a - Nhap hs    \n");
                    printf ("--- b - In hs      \n");
                    printf ("--- c - Tim hs     \n");
                    char b;
                    do{
                        printf ("nhap lua chon: ");
                        b = getch ();
                        switch (b)
                        {
                            case 'a':
                                nhapdshs();
                                break;
                            case 'b':
                                inhs();
                                break;
                            case 'c':
                                timkiemhs();
                                break;
                            default:
                                printf ("Nhap sai");
                        }
                    }while (b<'a' || b>'c');
    
            }
        }while ('1'>a || a>'3');
    }
    
    
    int main ()
    {
        menu();
        return 0;
    }

    Bạn xem bài này của mình đúng không :(

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

  1. Menu chương trình quản lí sinh viên
    Gửi bởi ohopoo trong diễn đàn Thủ thuật, Tutorials và Mã nguồn C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 15-04-2010, 12:37 PM
  2. Quản lý menu, viết chương trình tổng hợp
    Gửi bởi linhdong24 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 29-10-2009, 02:57 AM
  3. Bài tập C quản lí sinh viên. Làm sao để quay lại menu lựa chọn?
    Gửi bởi million trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 11
    Bài viết cuối: 24-10-2009, 02:02 PM
  4. viết chương trình tổ chức hệ thống menu đơn giản cho bài này giúp tớ với !!!
    Gửi bởi michiko_dangyeu911 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 30-09-2009, 02:08 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