Tải bản đầy đủ (.doc) (4 trang)

Bài tập Xây dựng sơ đồ khối và giả ngữ C doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (93.31 KB, 4 trang )

Bài 1.1 Xây dựng sơ đồ khối và giả ngữ C thực hiện tính tổng n số nguyên dương .
Trong đó, n nhập từ bàn phím. S= 1+2+3+4+…+n
a) Dùng cấu vòng lặp for
// Xây dựng giả ngữ C:
- Input: Nhập n
- Output : Tổng S của n số nguyên dương đầu tiên
- Process:
+ scanf(n);
+ s=0,i=1
+ for(i,n)
s=s+i;
+ return s
- Kết thúc
b)Dùng cấu trúc vòng while
// Xây dựng giả ngữ C:
- Input: Nhập n
- Output : Tổng S của n số nguyên dương đầu tiên
- Process:
+ scanf(n);
+ s=0,i=1
+ while(i<=n)
s=s+i;
i=i+1;
+ return s
- Kết thúc
c) Dùng cấu trúc vòng do while
// Xây dựng giả ngữ C:
- Input: Nhập n
- Output : Tổng S của n số nguyên dương đầu tiên
- Process:
+ scanf(n);


+ s=0,i=1
+ do{
s=s+i;
i=i+1;
}
while(i<=n);
+ return s
- Kết thúc
//Bài viết theo tài liệu và bài tập của gv Nguyễn Thành Thủy, ĐHKT Đà Nẵng
Kiểu cấu trúc cho phép ta khai báo một biến kiểu phức hợp, mỗi biến kiểu cấu trúc là một
bản ghi, mỗi bản ghi có thể có nhiều trường( nhiều thuộc tính).
Cú pháp:
Struct <tên cấu trúc>
{
<Kiểu dữ liệu ><tên biến>;

<Kiểu dữ liệu ><tên biến>;
};
typedef <tên cấu trúc > <tên kiểu>;
<tên kiểu> <tên biến>;
Để hiểu kỹ kiểu cấu trúc ta nghiên cứu Bài toán Quản lý điểm thi sinh viên như sau:
+ Nhập Số lượng sinh viên nhập từ bàn phím:
+ Hồ sơ sinh viên gồm có: Họ tên, Lớp, điểm môn 1,môn 2.
Yêu cầu:
a) Tổ chức lưu trữ dữ liệu
b) Viết chương trình trên C:
+ Nhập số n sinh viên:
+ Nhập hồ sơ của n sinh viên
+ In lên màn hình
+ Cho biết kết quả có bao nhiêu sinh viên có điểm trung bình >=5

Đoạn code cài đặt trên C:
#include<stdio.h>
#include<conio.h>
#define MAX 50
//—DINH NGHIA KIEU DU LIEU CO CAU TRUC———————————–
struct BANGHI
{
char hoten[MAX],lop[MAX];
int m1,m2;
};
typedef BANGHI DIEM;
DIEM SV[MAX];
int n;
//——NHAP HO SO TUNG SINH VIEN——————————————–
void NHAPHSSV(int &n,DIEM SV[])
{
printf(“\n-Nhap vao so luong SV:”);
scanf(“%d”,&n);
printf(“\n-Nhap vao ho so cua %d SV:\n”,n);
for( int i=1;i<=n;i++)
{
printf(“-SV %d :\n”,i);
printf(” +Hoten: “);
fflush(stdin);
gets(SV[i-1].hoten);
printf(” +Lop : “);
fflush(stdin);
gets(SV[i-1].lop);
printf(” +Diem mon 1 : “);
scanf(“%d”,&SV[i-1].m1);

printf(” +Diem mon 2 : “);
scanf(“%d”,&SV[i-1].m2);
}
}
//–IN KET QUA RA MAN HINH————————————————–
void INKQ(int n,DIEM SV[])
{
printf(“\n——-CHUONG TRINH QUAN LY DIEM SINH VIEN———-\n”);
printf(“Stt\tHOTEN\t\tLOP\tDIEM1\tDIEM2\n\n”);
for( int i=1;i<=n;i++)
{
printf(“%d”,i);
printf(“\t%s”,SV[i-1].hoten);
printf(“\t\t%s”,SV[i-1].lop);
printf(“\t%d”,SV[i-1].m1);
printf(“\t%d\n”,SV[i-1].m2);
}
}
//———-ĐẾM SỐ LƯỢNG SINH VIÊN CÓ ĐTB >=5——————-
int DEMSL(int n,DIEM SV[])
{
int dem=0;
for(int i=0;i<n;i++)
if((float)(SV[i].m1+SV[i].m2)/2>=5)
dem++;
return(dem);
}
//———————————————————————————-
void main()
{

clrscr();
NHAPHSSV(n,SV);
INKQ(n,SV);
printf(“\nSo SV co DTB >=5 la: %d”,DEMSL(n,SV));
getch();
}

×