Đăng Nhập

Vui lòng khai báo chính xác tên truy cập và mật khẩu!

Quên mật khẩu?

    Giúp em bài tập C

      Tony Stark

      Giới tính : Nam

      Tuổi : 31

      Đến từ : Cần thơ

      Ngày Tham gia : 10/01/2012

      Tổng số bài gửi : 750

      #1

       Thu Jan 19, 2012 7:22 pm

      đề cho là nhập n gồm k chữ số sao đó in ra số lớn nhất
      cái in số lớn nhất biết rồi còn cách tách các số trong n ra để so sánh thì Biết chết liên!
      ai biết cách tách trả lời dùm em
      thanks
      Admin
      Admin

      Giới tính : Nam

      Đến từ : TPHCM

      Ngày Tham gia : 03/04/2011

      Tổng số bài gửi : 2292

      #2

       Thu Jan 19, 2012 7:51 pm

      ongnoimay đã viết:đề cho là nhập n gồm k chữ số sao đó in ra số lớn nhất
      cái in số lớn nhất biết rồi còn cách tách các số trong n ra để so sánh thì Biết chết liên!
      ai biết cách tách trả lời dùm em
      thanks
      đề yêu cầu là tìm số lớn nhất trong mảng hả bạn!hay dãy số bình thường
      Code:
      #include <stdio.h>
      #include <conio.h>
      //Nhap
      void Nhap(int a[],int &n){
          int i;
          for(i=0;i<n;i++){
              printf("a[%d] =",i);
              scanf("%d",&a[i]);
              }
      }   
      //Xuat
      void Xuat(int a[], int n){
          int i;
          for(i=0; i<n ; i++)
              printf("%3d",a[i]);
          printf("\n");
      }
      //So lon nhat 
      int Max(int n,int a[]){
          int i,max;
          max =a[0];
          for(i=0;i<n;i++){
              if(a[i]>max)  max=a[i];
          }
          return max;
      }
      /*
      void vitri(int n,int a[]){
          int i,k;
          int vtd,vtc;
          vtd=vtc=0;
          k=Max(n,a);
          for(i=0;i<n;i++){
            if(a[i]==k)
            {
              if(vtd==0)
              vtd=i+1;
              vtc=i+1;
            }
        }
          printf("\nVi tri dau tien la : %d",vtd);
          printf("\nVi tri cuoi cung la :%d",vtc);
      }
      //Ham chinh-------*/
      int main(){
          int a[100],n,vt[100];
          printf("\nNhap so cac phan tu cua day:");
          scanf("%d",&n);
          if(n<=0)
          return 0;
          //
          Nhap(a,n);
          printf("\nDay cac so :");
          Xuat(a,n);
          //
          printf("\nSo lon nhat trong day la :%d",Max(n,a));
        // vitri(n,a);
          getch();
      }


      Được sửa bởi Admin ngày Thu Jan 19, 2012 7:57 pm; sửa lần 2.
      Tony Stark

      Giới tính : Nam

      Tuổi : 31

      Đến từ : Cần thơ

      Ngày Tham gia : 10/01/2012

      Tổng số bài gửi : 750

      #3

       Thu Jan 19, 2012 7:53 pm

      Dạ như em không biết sao tách mấy số ra để so sánh
      Admin
      Admin

      Giới tính : Nam

      Đến từ : TPHCM

      Ngày Tham gia : 03/04/2011

      Tổng số bài gửi : 2292

      #4

       Thu Jan 19, 2012 8:06 pm

      ongnoimay đã viết:Dạ như em không biết sao tách mấy số ra để so sánh
      Đâu cần tách đâu e.
      -Ban đầu bạn gán pần tử đầu tiên của mảng cho biến max: max=a[0]
      -Duyệt từ pần tử thứ 2 đền pần tử cuối cùng n-1
      + nếu max <= a[i] thì gán max=a[i]
      +ngược lại gán max=max(theo cú páp if...else). lưu ý: bạn ko cần ghi dòng này cũng được
      cách đệ quy hay hơn
      Code:

      int Max(int n,int a[]){
          int i,max;
          max =a[0];
          for(i=0;i<n;i++){
              if(a[i]>max)  max=a[i];
          }
          return max;
      }
      Tony Stark

      Giới tính : Nam

      Tuổi : 31

      Đến từ : Cần thơ

      Ngày Tham gia : 10/01/2012

      Tổng số bài gửi : 750

      #5

       Thu Jan 19, 2012 8:10 pm

      Vậy còn cái này không tách có tách không anh anh chỉ dùm em cách tách luôn đi còn nhiều bài tập cần tách mà em ko biết:D Viết chương trình nhập số nguyên dương n gồm k chữ số, sắp xếp các chữ số của n theo thứ tự tăng dần. Ví dụ: Nhập n=1536 , Kết quả sau khi sắp xếp: 1356.


      còn cái này nữa không tách thì hơi khó

      . Viết chương trình nhập số nguyên dương n gồm k chữ số , sau đó nhập một số nguyên x, tìm vị trí xuất hiện của chữ số có giá trị x trong n.
      Admin
      Admin

      Giới tính : Nam

      Đến từ : TPHCM

      Ngày Tham gia : 03/04/2011

      Tổng số bài gửi : 2292

      #6

       Thu Jan 19, 2012 8:36 pm

      ongnoimay đã viết:Vậy còn cái này không tách có tách không anh anh chỉ dùm em cách tách luôn đi còn nhiều bài tập cần tách mà em ko biết:D Viết chương trình nhập số nguyên dương n gồm k chữ số, sắp xếp các chữ số của n theo thứ tự tăng dần. Ví dụ: Nhập n=1536 , Kết quả sau khi sắp xếp: 1356.

      cho e nè
      Code:

      #include <stdio.h>
      #include <conio.h>
      void main()
      {
        int a[100], i, j, n, temp;

        printf("Nhap so phan tu:");
        scanf("%d",&n);
        for (i=0;i<n;i++)
          {
            printf("\nNhap a[%d]=",i);
            scanf("%d",&a[i]);
          }
        printf("\n");
        for (i = 0; i < n; i++) printf("%d ",a[i]);

        for (i = 0; i < n - 1; i++)
          for (j = i + 1; j < n; j++)
          {
          if (a[i] > a[j])
            {
              temp = a[i];
              a[i] = a[j];
              a[j] = temp;
              }
          }
          for (j=0; j<n; j++)    printf("\n %d ",a[j]);
          getch();
      }





      Phan hoan doi ne
      y tuong neu a[i]>a[j]
      thi hoan doi thôi là được mà em.
      Code:

      void hoandoi(int *a,int*b){
                                          int tam;
                                          tam=*a;
                                            *a=*b;
                                            *b=tam;
                                          } 



      code tìm vị trí
      Code:
      #include<stdio.h>
      #include<stdlib.h>
      #include<conio.h>

        void nhap(int a[],int &n,int &x)
        {
           printf("n= ");
           scanf("%d",&n);
           for(int i=0;i<n;i++)
           {
              printf("a[%d]= ",i);
              scanf("%d",&a[i]);
           }
           printf("x= ");
           scanf("%d",&x);
        }

        int tim(int a[],int n,int x)
        {
           for(int i=0;i<n;i++)
              if(a[i]==x)
                 return i;
                  return -1;
        }

        void main()
        {
           int a[10],n,x;
           nhap(a,n,x);
           if(tim(a,n,x)==-1)
              printf("k ton tai %d trong mang",x);
           else
              printf("%d dung o vi tri %d trog mang",x,tim(a,n,x));
           getch();
        }
      #7