Assigment 1
Câu hỏi 1:

Khai báo các hàm như sau:
    • Tìm và trả về số lớn nhất trong N số thực
    • Tính chu vi hình t...
• Thoát

Q1: Nhập vào số N và mảng các số nguyên
   Khi người dùng chọn 1 từ menu, làm như sau:
         • Đầu tiên, hiển ...
int n;
clrscr();
printf(quot;nNhap vao n = quot;);
scanf(quot;%dquot;,&n);
nhapx(s, n);
printf(quot;nAll string : quot;);
...
void inmax(char *s[],int n,int max){
       int i;

      for(i=0;i<n;i++)
             if(strlen(s[i])==max) printf(quot;...
}
case '4' :{
printf(quot;nCount the square numbers : %dquot;,csqua(a, n));
break;
}
}
}while( chon != '0');
getch();
}
//...
void psmall(int *a, int n)
{
int i, min;
min = 1000;
for (i=0; i<n; i++)
{
if ( (a[i] >0 ) &&(min > a[i]))
min = a[i];
}
p...
Upcoming SlideShare
Loading in...5
×

Epc Assignment1 Vn

270

Published on

Published in: Education, Sports
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
270
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Epc Assignment1 Vn

  1. 1. Assigment 1 Câu hỏi 1: Khai báo các hàm như sau: • Tìm và trả về số lớn nhất trong N số thực • Tính chu vi hình tròn bán kính R • Kiểm tra một số có phải là số nguyên tố không • Trả về kí tự đầu tiên của chuỗi Ví du: Ví dụ khai báo hàm tính và tìm tổng của 2 số nguyên như sau: int sum(int a, int b); Câu hỏi 2: Viết một chương trình nhập vào N chuỗi, lưu các chuỗi này vào trong các phần tử của mảng, và tìm chuỗi dài nhất (tìm chuỗi có chiều dài dài nhất), chỉ ra các chuỗi có chiều chiều dài dài nhất. Chương trình phải được tổ chức thành các module như sau: • Nhập vào số N và tất cả các phần từ của mảng từ thiết bị input của người dùng (các chuỗi do người dùng nhập vào từ phím). • Hiển thị kết quả gồm 3 phần: o Phần một in ra tất cả các phần tử của mảng. o Phần in ra chiều dài dài nhất (max length). o Phần 3 in ra tất cả các xâu có chiểu dài dài nhất Chú ý nhập N<100 Ví dụ: N=6; a[0] = abc; a[1] = a; a[2] = aabbcc; a[3] = abbb; a[4] = aaabbb; a[5] = 12345; all string: abc, a, aabbcc, abbb, aaabbb, 12345. Max length: 6 Longest string (s): aabbccc, aaabbb. Câu hỏi 3: Chú ý: chương trình phải tổ chức thành các module(tức tổ chức thành các hàm) Viết một chương trình dựa trên menu với nội dung như sau: • Nhập vào N và một mảng các số nguyên • Tìm số nguyên nhỏ nhất • Tính tổng các số âm • Đếm các số chính phương
  2. 2. • Thoát Q1: Nhập vào số N và mảng các số nguyên Khi người dùng chọn 1 từ menu, làm như sau: • Đầu tiên, hiển thị N=, và nhập số nguyên dương N(N<100) • Sau đó, nhập N số nguyên và lưu các số nguyên này vào trong mảng. Q2: Tìm số dương nhỏ nhất Khi người dùng chọn số 2 từ menu, tìm số dương nhỏ nhất trong mảng (đã được nhập trong menu 1) và trả về giá trị này cho hàm main để in ra. Chú ý: Nếu mảng không có số dương thì trả về 0 Q3: Tính tổng các số âm. Khi người dùng chọn 3 từ menu chính, tính tổng các số âm trong mảng và in ra Q4: Đếm các số chính phương Khi người dùng chọn 4 từ menu chính, đếm tất cả các số chính phương (số chính phương là số bằng bình phương của một số khác) và trả về giá trị cho hàm main để in ra. Q5: Thóat(Exit) Khi người dùng chọn 5 từ menu chính thì thóat khỏi chương trình. Dap An Cau 1 //Khai bao cac ham trong cau hoi //------------------------------------------ float max(float *a, int n); float dt(float r); int ktnt(int n); char kitu(char *s); //------------------------------------------ cau 2 #include <stdio.h> #include <conio.h> #include <string.h> #include <stdlib.h> #include <malloc.h> //--------------------------------- void nhapx(char *s[], int n); void inx(char *s[], int n); int Max(char *s[], int n); void inmax(char *s[],int n,int max); //--------------------------------- void main() { char *s[10];
  3. 3. int n; clrscr(); printf(quot;nNhap vao n = quot;); scanf(quot;%dquot;,&n); nhapx(s, n); printf(quot;nAll string : quot;); inx(s, n); printf(quot;nMax length : %dquot;,Max(s, n)); printf(quot;nLongest strin(s) :n quot;); inmax(s, n, Max(s, n)); getch(); } //--------------------------------- void nhapx(char *s[], int n) { int i; *s = (char *)malloc(n * sizeof(char)); if (*s==NULL) { printf(quot;Khong du bo nhoquot;); getch(); exit(1); } for (i=0; i<n; i++) { printf(quot; s[%d] = quot;,i+1); fflush(stdin); gets(s[i]); } } //--------------------------------- void inx(char *s[], int n) { int i; for (i=0; i<n; i++) printf(quot;%s ,quot;,s[i]); } //--------------------------------- int Max(char *s[], int n) { int i, max = 0; for (i=0; i<n; i++) { if (max < strlen(s[i]) ) max = strlen(s[i]); } return max; }
  4. 4. void inmax(char *s[],int n,int max){ int i; for(i=0;i<n;i++) if(strlen(s[i])==max) printf(quot;n%squot;,s[i]); } /**************************************/ Cau 3 #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <math.h> #include <malloc.h> //------------------------------------------ char menu(); int *nhapday(int *a, int n); void inday(int *a, int n); void psmall(int *a, int n); int ntotal(int *a, int n); int ktcp(int n); int csqua(int *a, int n); //------------------------------------------ void main() { int *a, n; char chon; clrscr(); do { chon = menu(); switch(chon) { case '1' :{ printf(quot;nEnter N = quot;); scanf(quot;%dquot;,&n); a = nhapday(a, n); break; } case '2' :{ printf(quot;nNumber the smallest positive value : quot;); psmall(a, n); break; } case '3' :{ printf(quot;nTotal of the negative numbers : %dquot;,ntotal(a, n)); break;
  5. 5. } case '4' :{ printf(quot;nCount the square numbers : %dquot;,csqua(a, n)); break; } } }while( chon != '0'); getch(); } //------------------------------------------ char menu() { char c; printf(quot;nquot;); printf(quot;n---------------------Menu---------------------quot;); printf(quot;n1. Input N and array of integer. quot;); printf(quot;n2. Find the smallest positive value.quot;); printf(quot;n3. Calculate total of the negative numbers.quot;); printf(quot;n4. Count the square numbers.quot;); printf(quot;n0. Exit.quot;); printf(quot;n----------------------------------------------quot;); printf(quot;nHay chon : quot;); do { c = getch(); }while( c > '4' || c < '0'); putc(c, stdout); return c; } //------------------------------------------ int *nhapday(int *a, int n) { int i; a = (int *)malloc(n * sizeof(int)); if (a==NULL) { printf(quot;Khong du bo nhoquot;); getch(); exit(1); } for (i=0; i<n; i++) { printf(quot; A[%d] = quot;,i+1); scanf(quot;%dquot;,a+i); } return a; } //------------------------------------------
  6. 6. void psmall(int *a, int n) { int i, min; min = 1000; for (i=0; i<n; i++) { if ( (a[i] >0 ) &&(min > a[i])) min = a[i]; } printf(quot;%dquot;,min); } //------------------------------------------ int ntotal(int *a, int n) { int i, sum = 0; for (i=0; i<n; i++) { if ( a[i] < 0) sum += a[i]; } return sum; } //------------------------------------------ int ktcp(int n) { int x; if ( n< 0 ) return 0; else { x = floor( sqrt(n)); if ( x*x != n) return 0; } return 1; } //------------------------------------------ int csqua(int *a, int n){ int i,sum=0; for(i=0;i<n;i++) if (ktcp(a[i]) ==1) sum = sum + 1; return sum; }

×