TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
Họ và tên:.............................................
MSSV:..................................................
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Không được phép dùng tài liệu
� Được phép dùng tài liệu giấy
Đề thi số: 1711
Đề thi gồm 2 trang.
Chú ý: Các khai báo về thư viện, các hàm cơ bản và khai báo khác (nếu cần thiết) được xem như đầy đủ. Mỗi câu hỏi trắc
nghiệm chỉ chọn một đáp án đúng nhất. Phần I, II sinh viên làm trực tiếp vào đề. Sinh viên chỉ được tối đa 10 điểm
I. Các câu hỏi trắc nghiệm (4đ)
Đoạn lệnh sau dùng cho 2 câu tiếp theo 1-2:
int i =0, j =1, s =0;
for ( i =0; i < 4 ; ++i ) {
s = s + j;
j = j ∗ 3;
}
Câu
✟ Thực thi xong đoạn lệnh
✟ giá trị của s là:
☛ trên
☛ 1.
A
40
B
15
✡
✠
✡✟
✠
☛✟
☛
C✠
7
D✠
16
✡
✡
Câu
☛ 2.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của j là:
A
81
B
32
✡
✠
✡✟
✠
☛✟
☛
C✠
27
D✠
1
✡
✡
Câu 3. Kiểu dữ liệu nào sau đây phù hợp nhất để lưu điểm
học:
✟
☛ ✟ tổng kết của một môn ☛
A
float
B✠
int
✡
✠
✡
☛✟
☛✟
C✠
char
D✠
pointer
✡
✡
Câu
☛ 4.
✟ Hãy chọn phát biểu sai
A
Ngơn ngữ tốn học cũng là ngơn ngữ lập trình
✡
☛✠
✟
B✠
Máy tính có thể hiểu trực tiếp mã giả
✡
☛
✟
C
Ngơn ngữ cấp cao chỉ được chuyển ngữ bởi bộ
✡✠
biên dịch (compiler)
☛✟
D✠
Máy tính có thể hiểu trực tiếp hợp ngữ
✡
Câu
✟ Khai báo mảng nào sau đây là sai
☛ 5.
A int a[2];
✡
☛✠
✟
B✠
int a[] = {1, 3};
✡
☛✟
C✠
int a[2] = malloc(2 * sizeof(2));
✡
☛
✟
D✠
int* a = malloc(2 * sizeof(2));
✡
Câu
✟ Hãy chọn phát biểu sai về các kiểu dữ liệu
☛ 6.
A
int là kiểu số nguyên và chiếm 6bytes trong bộ
✡✠
nhớ
☛✟
B✠
float là kiểu số thực dấu chấm động
✡
☛✟
C✠
double chiếm 8bytes trong bộ nhớ
✡
☛
✟
D✠
pointer là kiểu dẫn xuất
✡
Câu 7. Dòng lệnh sau xuất giá trị gì ra màn hình?
p r i n t f ( " %08.1 f " ,
☛✟
A✠
123.1540
✡
☛✟
C✠
123.154
✡
Ngày thi: 11/01/2018
123.154);
☛✟
B✠
000123.2
✡
☛
✟
D✠
00123.15
✡
CuuDuongThanCong.com
Câu 8. Định dạng dữ liệu khi đọc/ghi bằng scanf, printf
☛✟
☛ ✟ cho kiểu char là:
A✠
%s
B✠
%d
✡
✡
☛
✟
☛✟
C✠
%e
D✠
%c
✡
✡
Câu 9. Dòng lệnh sau xuất giá trị gì ra màn hình:
p r i n t f ( "%d" , 0x6A ) ;
☛✟
☛✟
A
6A
B✠
lệnh bị lỗi
✡
✠
✡
☛✟
✟
☛
C
106
D
0x6a
✡✠
✡✠
Câu 10. Giá trị in ra của đoạn lệnh C sau là
int x = 3 , y = 7 ;
p r i n t f ( "%d %d" , x + −−y , x++);
☛✟
☛✟
A✠
73
B✠
74
✡
✡
☛✟
☛
✟
C
6
4
D
10 3
✡✠
✡✠
Câu 11. Thực thi xong đoạn lệnh sau giá trị của x là:
int x = 7 ;
i f ( x = 3)
x = x ∗ 3 + 1;
☛✟
A✠
3
✡
☛✟
C
10
✡✠
☛✟
B✠
7
✡
☛
✟
D
22
✡✠
Đoạn lệnh sau dùng cho 2 câu 12-13:
int a , b ;
f o r ( a = 1 , b = 1 ; a<=50; a+=2){
i f ( b>=20)
break ;
i f ( ( a+b ) % 3 == 1 )
{ b += 4 ; continue ; }
}
Câu☛12.
thi đoạn chương trình
☛✟
✟ Giá trị của a sau khi thực
A
50
B
51
✡
✠
✡✟
✠
☛✟
☛
C
13
D
Cả A, B và C đều sai
✡✠
✡✠
Câu☛13.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của b là:
A✠
21
B✠
50
✡
✡
☛✟
☛
✟
C
32
D
16
✡✠
✡✠
Câu 14. Lời gọi hàm sqrt(9) trả về giá trị:
☛✟
☛✟
A✠
1
B✠
6.0
✡
✡
☛✟
☛
✟
C✠
81.0
D✠
3.0
✡
✡
Trang 1/2 − Mã đề 1711
/>
Câu☛15.
✟ Hãy chọn phát biểu sai:
A
Trình biên dịch có thể hiểu được mã giả
✡
☛✠
✟
B✠
Để mơ tả giải thuật có thể dùng mã giả, lưu
✡
đồ hoặc mã lập trình
☛✟
C
Lưu đồ sử dụng một số ký hiệu để mô tả giải
✡✠
thuật
☛✟
D
Mã lập trình là mã được viết bởi một ngơn
✡✠
ngữ lập trình nào đó (C, C++,..)
II. Các câu hỏi điền kết quả (2đ)
Câu 17. Biến kiểu char chiếm:
bộ nhớ.
Câu 16. Thiết bị nào sau đây thuộc về phần cứng (hardware) trong máy tính
☛✟
A
CPU
✡
☛✠
✟
B✠
Bộ tiền xử lý (Preprocessor)
✡
☛
✟
C✠
Trình biên dịch (Compiler)
✡
☛
✟
D
Bộ chuyển ngữ (Assembler)
✡✠
byte(s) trong
Câu 18. Giá trị của biểu thức 5 ∗ (int)2.5 + 1.5 là:
Câu 19. Giá trị của biểu thức 12∧ 5 là:
Câu 20. Đoạn chương trình sau tính tổng các số từ 1 đến
50 thỏa mãn chia hết cho 2 nhưng không chia hết
cho 4. Hãy điền vào chỗ trống để hoàn thiện
int i, sum=0;
)
for(i = 1;
)
if(
sum =
III. Phần tự luận (5đ)
Câu 21. (1đ) Đây là câu dùng chấm phong cách lập trình. Để được điểm phần này, sinh viên phải làm được ít nhất một phần
(có điểm dương) của một trong các câu ở dưới.
Câu 22. (1.5đ) Viết chương trình thực hiện các u cầu sau:
• Nhập vào một số nguyên dương n từ bàn phím. Nếu nhập sai thì u cầu nhập lại
• Tính và in ra tổng bình phương các số nguyên dương từ 1 tới n. S = 12 + 22 + ... + n2
Câu 23. (2.5đ) Trong không gian 3 chiều Oxyz cho tọa độ 3 đỉnh của một tam giác �ABC.
• Hãy dùng struct để mô tả kiểu cấu trúc phù hợp về thơng tin mỗi điểm trong Oxyz
• Hãy nhập tọa độ 3 đỉnh �ABC và lưu lại để tính tốn
• Giả sử hình chiếu đứng của �ABC xuống mặt phẳng Oxy là �A� B � C � , hãy tính và xuất ra màn hình tọa độ
của �A� B � C �
• Viết hàm trong_tam(...) nhận vào thơng tin 3 điểm A� , B � , C � của �A� B � C � ở trên, tính và trả về giao điểm
3 đường trung tuyến của �A� B � C � (trọng tâm của �A� B � C � )
Chủ nhiệm Khoa/Bộ môn
Giảng viên ra đề
ThS. Võ Thanh Hùng
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1711
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Khơng được phép dùng tài liệu
Đề thi số: 1711
☛✟
Câu 1. ✡
A✠
☛✟
Câu 2. ✡
A✠
☛✟
Câu 4. ✡
B✠
☛✟
Câu 5. ✡
C✠
☛✟
A✠
Câu 6. ✡
☛✟
B✠
Câu 7. ✡
☛✟
A✠
Câu 3. ✡
� Được phép dùng tài liệu giấy
I. Các câu hỏi trắc nghiệm (4đ)
☛✟
Câu 8. ✡
D✠
☛✟
Câu 9. ✡
C✠
☛✟
D✠
Câu 10. ✡
☛✟
C✠
Câu 11. ✡
☛✟
Câu 12. ✡
C✠
☛✟
A✠
Câu 13. ✡
II. Các câu hỏi điền kết quả (2đ)
Câu 17.
1.
Câu 19.
Câu 18.
11.5.
Câu 20. .
☛✟
Câu 14. ✡
D✠
☛✟
A✠
Câu 15. ✡
☛✟
Câu 16. ✡
A✠
9.
III. Phần tự luận (5đ)
Câu 21. Lời giải.
Câu 22. Lời giải. Gợi ý giải (sinh viên có thể có cách làm khác)
#include <s t d i o . h>
#include <math . h>
int main ( ) {
int n , S ;
do {
p r i n t f ( "Nhap vao s o n : " ) ;
s c a n f ( "%d" , &n ) ;
} while ( n <= 0 ) ;
S = 0;
f o r ( int i = 1 ; i <= n ; ++i )
S += i ∗ i ;
p r i n t f ( "S=%d\n" , S ) ;
return 0 ;
}
\fi
Câu 23. Lời giải. Gợi ý giải, sinh viên có thể làm theo cách khác
#include <s t d i o . h>
#include < s t d l i b . h>
struct Point {
float x , y , z ;
};
void p r i n t P o i n t ( struct Point p ) {
p r i n t f ( " (%f , %f , %f ) " , p . x , p . y , p . z ) ;
}
struct Point trong_tam ( struct Po int A1 , struct Poi nt B1 , struct Poi nt C1) {
struct Point p ;
p . x = (A1 . x + B1 . x + C1 . x ) / 3 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 1/2 − Mã đề 1711
/>
p . y = (A1 . y + B1 . y + C1 . y ) / 3 ;
p . z = (A1 . z + B1 . z + C1 . z ) / 3 ;
}
return p ;
int main ( ) {
struct Point A, B, C;
// nhap
p r i n t f ( "Hay nhap vao t o a
s c a n f ( "%f%f%f " , &(A. x ) ,
s c a n f ( "%f%f%f " , &(B . x ) ,
s c a n f ( "%f%f%f " , &(C. x ) ,
do A, B, C" ) ;
&(A. y ) , &(A. z ) ) ;
&(B . y ) , &(B . z ) ) ;
&(C . y ) , &(C . z ) ) ;
p r i n t f ( "A (%f , %f , %f ) \ n" , A. x , A. y , A. z ) ;
p r i n t f ( "B (%f , %f , %f ) \ n" , B . x , B . y , B . z ) ;
p r i n t f ( "C (%f , %f , %f ) \ n" , C . x , C . y , C . z ) ;
// h i n h c h i e u
struct Point A1 , B1 , C1 ;
A1 = A; A1 . z = 0 ;
B1 = B ; B1 . z = 0 ;
C1 = C; C1 . z = 0 ;
p r i n t P o i n t (A1 ) ; p r i n t P o i n t ( B1 ) ; p r i n t P o i n t (C1 ) ;
p r i n t f ( "\ n t ro n g tam : " ) ;
p r i n t P o i n t ( trong_tam (A1 , B1 , C1 ) ) ;
}
return 0 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1711
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
Họ và tên:.............................................
MSSV:..................................................
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Mơn thi: Nhập mơn lập trình (CO1003)
Thời gian làm bài: 90 phút
� Không được phép dùng tài liệu
� Được phép dùng tài liệu giấy
Đề thi số: 1713
Đề thi gồm 2 trang.
Chú ý: Các khai báo về thư viện, các hàm cơ bản và khai báo khác (nếu cần thiết) được xem như đầy đủ. Mỗi câu hỏi trắc
nghiệm chỉ chọn một đáp án đúng nhất. Phần I, II sinh viên làm trực tiếp vào đề. Sinh viên chỉ được tối đa 10 điểm
I. Các câu hỏi trắc nghiệm (4đ)
Câu
☛ 1.
✟ Hãy chọn phát biểu sai về các kiểu dữ liệu
A
pointer là kiểu dẫn xuất
✡
☛✠
✟
B✠
int là kiểu số nguyên và chiếm 6bytes trong bộ
✡
nhớ
☛✟
C
float là kiểu số thực dấu chấm động
✡✟
✠
☛
D
double chiếm 8bytes trong bộ nhớ
✡✠
Câu 2. Lời gọi hàm sqrt(9) trả về giá trị:
☛✟
☛✟
A
3.0
B✠
1
✡
✠
✡
☛✟
☛
✟
C
6.0
D
81.0
✡✠
✡✠
Câu 3. Thiết bị nào sau đây thuộc về phần cứng (hardware) trong máy tính
☛✟
A
Bộ
chuyển ngữ (Assembler)
✡
☛✠
✟
B✠
CPU
✡
☛
✟
C✠
Bộ tiền xử lý (Preprocessor)
✡
☛
✟
D
Trình biên dịch (Compiler)
✡✠
Câu 4. Giá trị in ra của đoạn lệnh C sau là
int x = 3 , y = 7 ;
p r i n t f ( "%d %d" , x + −−y , x++);
☛✟
☛✟
A
10
3
B✠
73
✡
✠
✡
☛✟
☛
✟
C
7
4
D
64
✡✠
✡✠
Câu
☛ 5.
✟ Hãy chọn phát biểu sai:
A
Mã lập trình là mã được viết bởi một ngơn
✡✠
ngữ lập trình nào đó (C, C++,..)
☛✟
B
Trình biên dịch có thể hiểu được mã giả
✡✟
✠
☛
C✠
Để mơ tả giải thuật có thể dùng mã giả, lưu
✡
đồ hoặc mã lập trình
☛✟
D
Lưu đồ sử dụng một số ký hiệu để mô tả giải
✡✠
thuật
Câu
☛ 6.
✟ Khai báo mảng nào sau đây là sai
A int* a = malloc(2 * sizeof(2));
✡
☛✠
✟
B✠
int a[2];
✡
☛✟
C✠
int a[] = {1, 3};
✡
☛
✟
D✠
int a[2] = malloc(2 * sizeof(2));
✡
Câu 7. Thực thi xong đoạn lệnh sau giá trị của x là:
int x = 7 ;
i f ( x = 3)
x = x ∗ 3 + 1;
☛✟
A✠
22
✡
☛✟
C✠
7
✡
Ngày thi: 11/01/2018
☛✟
B✠
3
✡
☛
✟
D✠
10
✡
CuuDuongThanCong.com
Câu 8. Kiểu dữ liệu nào sau đây phù hợp nhất để lưu điểm
học:
☛ ✟ tổng kết của một môn ☛
✟
A
pointer
B✠
float
✡
✠
✡
☛✟
☛✟
C✠
int
D✠
char
✡
✡
Câu 9. Định dạng dữ liệu khi đọc/ghi bằng scanf, printf
☛✟
☛ ✟ cho kiểu char là:
A✠
%c
B✠
%s
✡
✡
☛✟
✟
☛
C✠
%d
D✠
%e
✡
✡
Câu 10. Dịng lệnh sau xuất giá trị gì ra màn hình:
p r i n t f ( "%d" , 0x6A ) ;
☛✟
☛✟
A✠
0x6a
B✠
6A
✡
✡
☛✟
☛
✟
C✠
lệnh bị lỗi
D✠
106
✡
✡
Câu☛11.
✟ Hãy chọn phát biểu sai
A
Máy tính có thể hiểu trực tiếp hợp ngữ
✡
☛✠
✟
B✠
Ngơn ngữ tốn học cũng là ngơn ngữ lập trình
✡
☛
✟
C✠
Máy tính có thể hiểu trực tiếp mã giả
✡
☛
✟
D
Ngôn ngữ cấp cao chỉ được chuyển ngữ bởi bộ
✡✠
biên dịch (compiler)
Đoạn lệnh sau dùng cho 2 câu 12-13:
int a , b ;
f o r ( a = 1 , b = 1 ; a<=50; a+=2){
i f ( b>=20)
break ;
i f ( ( a+b ) % 3 == 1 )
{ b += 4 ; continue ; }
}
Câu☛12.
thi đoạn chương trình
✟ Giá trị của a sau khi thực
☛✟
A
50
B
13
✡
✠
✡✟
✠
☛✟
☛
C✠
51
D✠
Cả A, B và C đều sai
✡
✡
Câu☛13.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của b là:
A
16
B
21
✡
✠
✡✟
✠
☛✟
☛
C✠
50
D✠
32
✡
✡
Câu 14. Dịng lệnh sau xuất giá trị gì ra màn hình?
p r i n t f ( " %08.1 f " ,
☛✟
A✠
00123.15
✡
☛✟
C✠
000123.2
✡
123.154);
☛✟
B✠
123.1540
✡
☛
✟
D✠
123.154
✡
Đoạn lệnh sau dùng cho 2 câu tiếp theo 15-16:
Trang 1/2 − Mã đề 1713
/>
Câu☛15.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của s là:
A
16
B
40
✡
✠
✡✟
✠
☛✟
☛
C✠
15
D✠
7
✡
✡
int i =0, j =1, s =0;
for ( i =0; i < 4 ; ++i ) {
s = s + j;
j = j ∗ 3;
}
Câu☛16.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của j là:
A
1
B
81
✡
✠
✡✟
✠
☛✟
☛
C✠
32
D✠
27
✡
✡
II. Các câu hỏi điền kết quả (2đ)
Câu 17. Đoạn chương trình sau tính tổng các số từ 1 đến
Câu 18. Giá trị của biểu thức 5 ∗ (int)2.5 + 1.5 là:
50 thỏa mãn chia hết cho 2 nhưng không chia hết
cho 4. Hãy điền vào chỗ trống để hoàn thiện
int i, sum=0;
byte(s) trong
) Câu 19. Biến kiểu char chiếm:
for(i = 1;
bộ nhớ.
)
if(
Câu 20. Giá trị của biểu thức 12∧ 5 là:
sum =
III. Phần tự luận (5đ)
Câu 21. (1đ) Đây là câu dùng chấm phong cách lập trình. Để được điểm phần này, sinh viên phải làm được ít nhất một phần
(có điểm dương) của một trong các câu ở dưới.
Câu 22. (1.5đ) Viết chương trình thực hiện các u cầu sau:
• Nhập vào một số nguyên dương n từ bàn phím. Nếu nhập sai thì u cầu nhập lại
• Tính và in ra tổng bình phương các số nguyên dương từ 1 tới n. S = 12 + 22 + ... + n2
Câu 23. (2.5đ) Trong không gian 3 chiều Oxyz cho tọa độ 3 đỉnh của một tam giác �ABC.
• Hãy dùng struct để mô tả kiểu cấu trúc phù hợp về thơng tin mỗi điểm trong Oxyz
• Hãy nhập tọa độ 3 đỉnh �ABC và lưu lại để tính tốn
• Giả sử hình chiếu đứng của �ABC xuống mặt phẳng Oxy là �A� B � C � , hãy tính và xuất ra màn hình tọa độ
của �A� B � C �
• Viết hàm trong_tam(...) nhận vào thơng tin 3 điểm A� , B � , C � của �A� B � C � ở trên, tính và trả về giao điểm
3 đường trung tuyến của �A� B � C � (trọng tâm của �A� B � C � )
Chủ nhiệm Khoa/Bộ môn
Giảng viên ra đề
ThS. Võ Thanh Hùng
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1713
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Khơng được phép dùng tài liệu
Đề thi số: 1713
☛✟
Câu 1. ✡
B✠
☛✟
Câu 2. ✡
A✠
☛✟
B✠
Câu 3. ✡
☛✟
Câu 4. ✡
A✠
☛✟
Câu 5. ✡
B✠
☛✟
Câu 6. ✡
D✠
☛✟
D✠
Câu 7. ✡
☛✟
Câu 8. ✡
B✠
� Được phép dùng tài liệu giấy
I. Các câu hỏi trắc nghiệm (4đ)
☛✟
Câu 9. ✡
A✠
☛✟
Câu 10. ✡
D✠
☛✟
Câu 11. ✡
C✠
☛✟
C✠
Câu 14. ✡
☛✟
Câu 15. ✡
B✠
☛✟
Câu 16. ✡
B✠
II. Các câu hỏi điền kết quả (2đ)
Câu 17. .
11.5.
Câu 18.
☛✟
Câu 12. ✡
B✠
☛✟
B✠
Câu 13. ✡
Câu 19.
1.
Câu 20.
9.
III. Phần tự luận (5đ)
Câu 21. Lời giải.
Câu 22. Lời giải. Gợi ý giải (sinh viên có thể có cách làm khác)
#include <s t d i o . h>
#include <math . h>
int main ( ) {
int n , S ;
do {
p r i n t f ( "Nhap vao s o n : " ) ;
s c a n f ( "%d" , &n ) ;
} while ( n <= 0 ) ;
S = 0;
f o r ( int i = 1 ; i <= n ; ++i )
S += i ∗ i ;
p r i n t f ( "S=%d\n" , S ) ;
return 0 ;
}
\fi
Câu 23. Lời giải. Gợi ý giải, sinh viên có thể làm theo cách khác
#include <s t d i o . h>
#include < s t d l i b . h>
struct Point {
float x , y , z ;
};
void p r i n t P o i n t ( struct Point p ) {
p r i n t f ( " (%f , %f , %f ) " , p . x , p . y , p . z ) ;
}
struct Point trong_tam ( struct Po int A1 , struct Poi nt B1 , struct Poi nt C1) {
struct Point p ;
p . x = (A1 . x + B1 . x + C1 . x ) / 3 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 1/2 − Mã đề 1713
/>
p . y = (A1 . y + B1 . y + C1 . y ) / 3 ;
p . z = (A1 . z + B1 . z + C1 . z ) / 3 ;
}
return p ;
int main ( ) {
struct Point A, B, C;
// nhap
p r i n t f ( "Hay nhap vao t o a
s c a n f ( "%f%f%f " , &(A. x ) ,
s c a n f ( "%f%f%f " , &(B . x ) ,
s c a n f ( "%f%f%f " , &(C. x ) ,
do A, B, C" ) ;
&(A. y ) , &(A. z ) ) ;
&(B . y ) , &(B . z ) ) ;
&(C . y ) , &(C . z ) ) ;
p r i n t f ( "A (%f , %f , %f ) \ n" , A. x , A. y , A. z ) ;
p r i n t f ( "B (%f , %f , %f ) \ n" , B . x , B . y , B . z ) ;
p r i n t f ( "C (%f , %f , %f ) \ n" , C . x , C . y , C . z ) ;
// h i n h c h i e u
struct Point A1 , B1 , C1 ;
A1 = A; A1 . z = 0 ;
B1 = B ; B1 . z = 0 ;
C1 = C; C1 . z = 0 ;
p r i n t P o i n t (A1 ) ; p r i n t P o i n t ( B1 ) ; p r i n t P o i n t (C1 ) ;
p r i n t f ( "\ n t ro n g tam : " ) ;
p r i n t P o i n t ( trong_tam (A1 , B1 , C1 ) ) ;
}
return 0 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1713
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
Họ và tên:.............................................
MSSV:..................................................
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Mơn thi: Nhập mơn lập trình (CO1003)
Thời gian làm bài: 90 phút
� Không được phép dùng tài liệu
� Được phép dùng tài liệu giấy
Đề thi số: 1715
Đề thi gồm 2 trang.
Chú ý: Các khai báo về thư viện, các hàm cơ bản và khai báo khác (nếu cần thiết) được xem như đầy đủ. Mỗi câu hỏi trắc
nghiệm chỉ chọn một đáp án đúng nhất. Phần I, II sinh viên làm trực tiếp vào đề. Sinh viên chỉ được tối đa 10 điểm
I. Các câu hỏi trắc nghiệm (4đ)
Câu 1. Thực thi xong đoạn lệnh sau giá trị của x là:
☛✟
A✠
3
✡
☛✟
C✠
7
✡
int x = 7 ;
i f ( x = 3)
x = x ∗ 3 + 1;
☛✟
B✠
22
✡
☛
✟
D✠
10
✡
Câu
☛ 2.
✟ Hãy chọn phát biểu sai
A
Ngơn ngữ tốn học cũng là ngơn ngữ lập trình
✡
☛✠
✟
B✠
Máy tính có thể hiểu trực tiếp hợp ngữ
✡
☛
✟
C
Máy tính có thể hiểu trực tiếp mã giả
✡✟
✠
☛
D✠
Ngôn ngữ cấp cao chỉ được chuyển ngữ bởi bộ
✡
biên dịch (compiler)
Câu 3. Dòng lệnh sau xuất giá trị gì ra màn hình:
p r i n t f ( "%d" , 0x6A ) ;
☛✟
☛✟
A✠
6A
B✠
0x6a
✡
✡
☛✟
☛
✟
C✠
lệnh bị lỗi
D✠
106
✡
✡
Câu 4. Dịng lệnh sau xuất giá trị gì ra màn hình?
p r i n t f ( " %08.1 f " ,
☛✟
A✠
123.1540
✡
☛✟
C
000123.2
✡✠
123.154);
☛✟
B✠
00123.15
✡
☛
✟
D
123.154
✡✠
Câu 5. Giá trị in ra của đoạn lệnh C sau là
int x = 3 , y = 7 ;
p r i n t f ( "%d %d" , x + −−y , x++);
☛✟
☛✟
A
7
3
B✠
10 3
✡
✠
✡
☛✟
☛
✟
C
7
4
D
64
✡✠
✡✠
Câu 6. Định dạng dữ liệu khi đọc/ghi bằng scanf, printf
☛ ✟ cho kiểu char là:
☛✟
A✠
%s
B✠
%c
✡
✡
☛✟
☛
✟
C✠
%d
D✠
%e
✡
✡
Câu
☛ 7.
✟ Hãy chọn phát biểu sai về các kiểu dữ liệu
A
int là kiểu số nguyên và chiếm 6bytes trong bộ
✡✠
nhớ
☛✟
B
pointer là kiểu dẫn xuất
✡✟
✠
☛
C
float là kiểu số thực dấu chấm động
✡✟
✠
☛
D✠
double chiếm 8bytes trong bộ nhớ
✡
Câu
☛ 8.
✟ Khai báo mảng nào sau đây là sai
A
int a[2];
✡
☛✠
✟
B✠
int* a = malloc(2 * sizeof(2));
✡
☛
✟
C✠
int a[] = {1, 3};
✡
☛
✟
D
int a[2] = malloc(2 * sizeof(2));
✡✠
Câu 9. Thiết bị nào sau đây thuộc về phần cứng (hardware) trong máy tính
☛✟
A CPU
✡
☛✠
✟
B
Bộ chuyển ngữ (Assembler)
✡✟
✠
☛
C
Bộ tiền xử lý (Preprocessor)
✡✟
✠
☛
D✠
Trình biên dịch (Compiler)
✡
Câu 10. Lời gọi hàm sqrt(9) trả về giá trị:
☛✟
☛✟
A
1
B✠
3.0
✡
✠
✡
☛
☛✟
✟
C
6.0
D
81.0
✡✠
✡✠
Đoạn lệnh sau dùng cho 2 câu 11-12:
int a , b ;
f o r ( a = 1 , b = 1 ; a<=50; a+=2){
i f ( b>=20)
break ;
i f ( ( a+b ) % 3 == 1 )
{ b += 4 ; continue ; }
}
Câu☛11.
thi đoạn chương trình
☛✟
✟ Giá trị của a sau khi thực
A
51
B
50
✡
✠
✡✟
✠
☛✟
☛
C✠
13
D✠
Cả A, B và C đều sai
✡
✡
Câu☛12.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của b là:
A
21
B
16
✡
✠
✡✟
✠
☛✟
☛
C✠
50
D✠
32
✡
✡
Câu 13. Kiểu dữ liệu nào sau đây phù hợp nhất để lưu điểm
học:
☛ ✟ tổng kết của một môn ☛
✟
A
float
B✠
pointer
✡
✠
✡
☛✟
☛✟
C✠
int
D✠
char
✡
✡
Câu☛14.
✟ Hãy chọn phát biểu sai:
A
Trình biên dịch có thể hiểu được mã giả
✡
☛✠
✟
B✠
Mã lập trình là mã được viết bởi một ngơn
✡
ngữ lập trình nào đó (C, C++,..)
☛✟
C
Để mơ tả giải thuật có thể dùng mã giả, lưu
✡✠
đồ hoặc mã lập trình
☛✟
D✠
Lưu đồ sử dụng một số ký hiệu để mô tả giải
✡
thuật
Đoạn lệnh sau dùng cho 2 câu tiếp theo 15-16:
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 1/2 − Mã đề 1715
/>
Câu☛15.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của s là:
A
40
B
16
✡
✠
✡✟
✠
☛✟
☛
C✠
15
D✠
7
✡
✡
int i =0, j =1, s =0;
for ( i =0; i < 4 ; ++i ) {
s = s + j;
j = j ∗ 3;
}
Câu☛16.
☛ trên
✟ Thực thi xong đoạn lệnh
✟ giá trị của j là:
A
81
B
1
✡
✠
✡✟
✠
☛✟
☛
C✠
32
D✠
27
✡
✡
II. Các câu hỏi điền kết quả (2đ)
Câu 17. Đoạn chương trình sau tính tổng các số từ 1 đến
Câu 18. Biến kiểu char chiếm:
byte(s) trong
50 thỏa mãn chia hết cho 2 nhưng không chia hết
bộ nhớ.
cho 4. Hãy điền vào chỗ trống để hoàn thiện
int i, sum=0;
) Câu 19. Giá trị của biểu thức 5 ∗ (int)2.5 + 1.5 là:
for(i = 1;
)
if(
Câu 20. Giá trị của biểu thức 12∧ 5 là:
sum =
III. Phần tự luận (5đ)
Câu 21. (1đ) Đây là câu dùng chấm phong cách lập trình. Để được điểm phần này, sinh viên phải làm được ít nhất một phần
(có điểm dương) của một trong các câu ở dưới.
Câu 22. (1.5đ) Viết chương trình thực hiện các u cầu sau:
• Nhập vào một số nguyên dương n từ bàn phím. Nếu nhập sai thì u cầu nhập lại
• Tính và in ra tổng bình phương các số nguyên dương từ 1 tới n. S = 12 + 22 + ... + n2
Câu 23. (2.5đ) Trong không gian 3 chiều Oxyz cho tọa độ 3 đỉnh của một tam giác �ABC.
• Hãy dùng struct để mô tả kiểu cấu trúc phù hợp về thơng tin mỗi điểm trong Oxyz
• Hãy nhập tọa độ 3 đỉnh �ABC và lưu lại để tính tốn
• Giả sử hình chiếu đứng của �ABC xuống mặt phẳng Oxy là �A� B � C � , hãy tính và xuất ra màn hình tọa độ
của �A� B � C �
• Viết hàm trong_tam(...) nhận vào thơng tin 3 điểm A� , B � , C � của �A� B � C � ở trên, tính và trả về giao điểm
3 đường trung tuyến của �A� B � C � (trọng tâm của �A� B � C � )
Chủ nhiệm Khoa/Bộ môn
Giảng viên ra đề
ThS. Võ Thanh Hùng
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1715
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Khơng được phép dùng tài liệu
Đề thi số: 1715
☛✟
Câu 1. ✡
D✠
☛✟
Câu 2. ✡
C✠
☛✟
D✠
Câu 3. ✡
☛✟
Câu 4. ✡
C✠
☛✟
Câu 5. ✡
B✠
☛✟
Câu 6. ✡
B✠
☛✟
A✠
Câu 7. ✡
☛✟
Câu 8. ✡
D✠
� Được phép dùng tài liệu giấy
I. Các câu hỏi trắc nghiệm (4đ)
☛✟
Câu 9. ✡
A✠
☛✟
B✠
Câu 10. ✡
☛✟
Câu 11. ✡
C✠
☛✟
Câu 13. ✡
A✠
☛✟
A✠
Câu 14. ✡
☛✟
Câu 15. ✡
A✠
☛✟
Câu 16. ✡
A✠
II. Các câu hỏi điền kết quả (2đ)
Câu 17. .
1.
Câu 18.
☛✟
Câu 12. ✡
A✠
Câu 19.
11.5.
Câu 20.
9.
III. Phần tự luận (5đ)
Câu 21. Lời giải.
Câu 22. Lời giải. Gợi ý giải (sinh viên có thể có cách làm khác)
#include <s t d i o . h>
#include <math . h>
int main ( ) {
int n , S ;
do {
p r i n t f ( "Nhap vao s o n : " ) ;
s c a n f ( "%d" , &n ) ;
} while ( n <= 0 ) ;
S = 0;
f o r ( int i = 1 ; i <= n ; ++i )
S += i ∗ i ;
p r i n t f ( "S=%d\n" , S ) ;
return 0 ;
}
\fi
Câu 23. Lời giải. Gợi ý giải, sinh viên có thể làm theo cách khác
#include <s t d i o . h>
#include < s t d l i b . h>
struct Point {
float x , y , z ;
};
void p r i n t P o i n t ( struct Point p ) {
p r i n t f ( " (%f , %f , %f ) " , p . x , p . y , p . z ) ;
}
struct Point trong_tam ( struct Po int A1 , struct Poi nt B1 , struct Poi nt C1) {
struct Point p ;
p . x = (A1 . x + B1 . x + C1 . x ) / 3 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 1/2 − Mã đề 1715
/>
p . y = (A1 . y + B1 . y + C1 . y ) / 3 ;
p . z = (A1 . z + B1 . z + C1 . z ) / 3 ;
}
return p ;
int main ( ) {
struct Point A, B, C;
// nhap
p r i n t f ( "Hay nhap vao t o a
s c a n f ( "%f%f%f " , &(A. x ) ,
s c a n f ( "%f%f%f " , &(B . x ) ,
s c a n f ( "%f%f%f " , &(C. x ) ,
do A, B, C" ) ;
&(A. y ) , &(A. z ) ) ;
&(B . y ) , &(B . z ) ) ;
&(C . y ) , &(C . z ) ) ;
p r i n t f ( "A (%f , %f , %f ) \ n" , A. x , A. y , A. z ) ;
p r i n t f ( "B (%f , %f , %f ) \ n" , B . x , B . y , B . z ) ;
p r i n t f ( "C (%f , %f , %f ) \ n" , C . x , C . y , C . z ) ;
// h i n h c h i e u
struct Point A1 , B1 , C1 ;
A1 = A; A1 . z = 0 ;
B1 = B ; B1 . z = 0 ;
C1 = C; C1 . z = 0 ;
p r i n t P o i n t (A1 ) ; p r i n t P o i n t ( B1 ) ; p r i n t P o i n t (C1 ) ;
p r i n t f ( "\ n t ro n g tam : " ) ;
p r i n t P o i n t ( trong_tam (A1 , B1 , C1 ) ) ;
}
return 0 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1715
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
Họ và tên:.............................................
MSSV:..................................................
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Không được phép dùng tài liệu
� Được phép dùng tài liệu giấy
Đề thi số: 1717
Đề thi gồm 2 trang.
Chú ý: Các khai báo về thư viện, các hàm cơ bản và khai báo khác (nếu cần thiết) được xem như đầy đủ. Mỗi câu hỏi trắc
nghiệm chỉ chọn một đáp án đúng nhất. Phần I, II sinh viên làm trực tiếp vào đề. Sinh viên chỉ được tối đa 10 điểm
I. Các câu hỏi trắc nghiệm (4đ)
Câu
☛ 1.
✟ Hãy chọn phát biểu sai về các kiểu dữ liệu
A
int là kiểu số nguyên và chiếm 6bytes trong bộ
✡✠
nhớ
☛✟
B
double chiếm 8bytes trong bộ nhớ
✡✟
✠
☛
C✠
float là kiểu số thực dấu chấm động
✡
☛
✟
D
pointer là kiểu dẫn xuất
✡✠
Câu 2. Lời gọi hàm sqrt(9) trả về giá trị:
☛✟
☛✟
A
1
B✠
81.0
✡
✠
✡
☛✟
☛
✟
C
6.0
D
3.0
✡✠
✡✠
Câu
✟ Hãy chọn phát biểu sai:
☛ 3.
A
Trình biên dịch có thể hiểu được mã giả
✡
✟
☛✠
B✠
Lưu đồ sử dụng một số ký hiệu để mô tả giải
✡
thuật
☛✟
C
Để mô tả giải thuật có thể dùng mã giả, lưu
✡✠
đồ hoặc mã lập trình
☛✟
D
Mã lập trình là mã được viết bởi một ngơn
✡✠
ngữ lập trình nào đó (C, C++,..)
Câu
☛ 4.
✟ Khai báo mảng nào sau đây là sai
A int a[2];
✡
☛✠
✟
B✠
int a[2] = malloc(2 * sizeof(2));
✡
☛✟
C✠
int a[] = {1, 3};
✡
☛
✟
D✠
int* a = malloc(2 * sizeof(2));
✡
Câu 5. Định dạng dữ liệu khi đọc/ghi bằng scanf, printf
☛✟
☛ ✟ cho kiểu char là:
A✠
%s
B✠
%e
✡
✡
☛✟
✟
☛
C
%d
D
%c
✡✠
✡✠
Đoạn lệnh sau dùng cho 2 câu 6-7:
int a , b ;
for ( a = 1 , b = 1 ; a<=50; a+=2){
i f ( b>=20)
break ;
i f ( ( a+b ) % 3 == 1 )
{ b += 4 ; continue ; }
}
Câu
thi đoạn chương trình
☛ 6.
☛✟
✟ Giá trị của a sau khi thực
A
51
B
13
✡
✠
✡✟
✠
☛✟
☛
C✠
50
D✠
Cả A, B và C đều sai
✡
✡
Câu
✟ Thực thi xong đoạn lệnh
✟ giá trị của b là:
☛ 7.
☛ trên
A
21
B
32
✡
✠
✡✟
✠
☛✟
☛
C
50
D
16
✡✠
✡✠
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Câu 8. Kiểu dữ liệu nào sau đây phù hợp nhất để lưu điểm
học:
☛ ✟ tổng kết của một môn ☛
✟
A
float
B✠
char
✡
✠
✡
☛✟
☛✟
C✠
int
D✠
pointer
✡
✡
Câu 9. Thiết bị nào sau đây thuộc về phần cứng (hardware) trong máy tính
☛✟
A CPU
✡
✟
☛✠
B
Trình biên dịch (Compiler)
✡✟
✠
☛
C
Bộ tiền xử lý (Preprocessor)
✡✟
✠
☛
D✠
Bộ chuyển ngữ (Assembler)
✡
Câu 10. Dòng lệnh sau xuất giá trị gì ra màn hình:
p r i n t f ( "%d" , 0x6A ) ;
☛✟
☛✟
A✠
6A
B✠
106
✡
✡
☛
✟
☛✟
C✠
lệnh bị lỗi
D✠
0x6a
✡
✡
Đoạn lệnh sau dùng cho 2 câu tiếp theo 11-12:
int i =0, j =1, s =0;
f o r ( i =0; i < 4 ; ++i ) {
s = s + j;
j = j ∗ 3;
}
Câu☛11.
✟ Thực thi xong đoạn lệnh
✟ giá trị của s là:
☛ trên
A
40
B
7
✡
✠
✡✟
✠
☛✟
☛
C✠
15
D✠
16
✡
✡
Câu☛12.
✟ Thực thi xong đoạn lệnh
✟ giá trị của j là:
☛ trên
A
81
B
27
✡
✠
✡✟
✠
☛✟
☛
C✠
32
D✠
1
✡
✡
Câu☛13.
✟ Hãy chọn phát biểu sai
A
Ngơn ngữ tốn học cũng là ngơn ngữ lập trình
✡
☛✠
✟
B✠
Ngơn ngữ cấp cao chỉ được chuyển ngữ bởi bộ
✡
biên dịch (compiler)
☛✟
C
Máy tính có thể hiểu trực tiếp mã giả
✡✟
✠
☛
D✠
Máy tính có thể hiểu trực tiếp hợp ngữ
✡
Câu 14. Thực thi xong đoạn lệnh sau giá trị của x là:
☛✟
A✠
3
✡
☛✟
C✠
7
✡
int x = 7 ;
i f ( x = 3)
x = x ∗ 3 + 1;
☛✟
B✠
10
✡
☛
✟
D✠
22
✡
Trang 1/2 − Mã đề 1717
/>
Câu 15. Dịng lệnh sau xuất giá trị gì ra màn hình?
p r i n t f ( " %08.1 f " ,
☛✟
A✠
123.1540
✡
☛✟
C
000123.2
✡✠
123.154);
☛✟
B✠
123.154
✡
☛
✟
D
00123.15
✡✠
Câu 16. Giá trị in ra của đoạn lệnh C sau là
int x = 3 , y = 7 ;
p r i n t f ( "%d %d" , x + −−y , x++);
☛✟
☛✟
A✠
73
B✠
64
✡
✡
☛✟
☛
✟
C✠
74
D✠
10 3
✡
✡
II. Các câu hỏi điền kết quả (2đ)
Câu 17. Giá trị của biểu thức 12∧ 5 là:
for(i = 1;
)
if(
)
sum =
Câu 18. Đoạn chương trình sau tính tổng các số từ 1 đến
50 thỏa mãn chia hết cho 2 nhưng không chia hết
cho 4. Hãy điền vào chỗ trống để hoàn thiện
int i, sum=0;
Câu 19. Giá trị của biểu thức 5 ∗ (int)2.5 + 1.5 là:
Câu 20. Biến kiểu char chiếm:
bộ nhớ.
byte(s) trong
III. Phần tự luận (5đ)
Câu 21. (1đ) Đây là câu dùng chấm phong cách lập trình. Để được điểm phần này, sinh viên phải làm được ít nhất một phần
(có điểm dương) của một trong các câu ở dưới.
Câu 22. (1.5đ) Viết chương trình thực hiện các u cầu sau:
• Nhập vào một số nguyên dương n từ bàn phím. Nếu nhập sai thì u cầu nhập lại
• Tính và in ra tổng bình phương các số nguyên dương từ 1 tới n. S = 12 + 22 + ... + n2
Câu 23. (2.5đ) Trong không gian 3 chiều Oxyz cho tọa độ 3 đỉnh của một tam giác �ABC.
• Hãy dùng struct để mô tả kiểu cấu trúc phù hợp về thông tin mỗi điểm trong Oxyz
• Hãy nhập tọa độ 3 đỉnh �ABC và lưu lại để tính tốn
• Giả sử hình chiếu đứng của �ABC xuống mặt phẳng Oxy là �A� B � C � , hãy tính và xuất ra màn hình tọa độ
của �A� B � C �
• Viết hàm trong_tam(...) nhận vào thông tin 3 điểm A� , B � , C � của �A� B � C � ở trên, tính và trả về giao điểm
3 đường trung tuyến của �A� B � C � (trọng tâm của �A� B � C � )
Chủ nhiệm Khoa/Bộ môn
Giảng viên ra đề
ThS. Võ Thanh Hùng
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1717
/>
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH
—————————————————
THI CUỐI KỲ - NIÊN KHĨA 2017-2018
Thời gian làm bài: 90 phút
Mơn thi: Nhập mơn lập trình (CO1003)
� Khơng được phép dùng tài liệu
Đề thi số: 1717
☛✟
Câu 1. ✡
A✠
☛✟
Câu 2. ✡
D✠
☛✟
A✠
Câu 3. ✡
☛✟
Câu 4. ✡
B✠
☛✟
Câu 5. ✡
D✠
☛✟
Câu 6. ✡
B✠
☛✟
Câu 7. ✡
A✠
� Được phép dùng tài liệu giấy
I. Các câu hỏi trắc nghiệm (4đ)
☛✟
Câu 8. ✡
A✠
☛✟
Câu 9. ✡
A✠
☛✟
Câu 10. ✡
B✠
☛✟
Câu 11. ✡
A✠
☛✟
A✠
Câu 12. ✡
☛✟
C✠
Câu 13. ✡
II. Các câu hỏi điền kết quả (2đ)
9.
Câu 17.
Câu 18. .
Câu 19.
11.5.
Câu 20.
1.
☛✟
Câu 14. ✡
B✠
☛✟
Câu 15. ✡
C✠
☛✟
Câu 16. ✡
D✠
III. Phần tự luận (5đ)
Câu 21. Lời giải.
Câu 22. Lời giải. Gợi ý giải (sinh viên có thể có cách làm khác)
#include <s t d i o . h>
#include <math . h>
int main ( ) {
int n , S ;
do {
p r i n t f ( "Nhap vao s o n : " ) ;
s c a n f ( "%d" , &n ) ;
} while ( n <= 0 ) ;
S = 0;
f o r ( int i = 1 ; i <= n ; ++i )
S += i ∗ i ;
p r i n t f ( "S=%d\n" , S ) ;
return 0 ;
}
\fi
Câu 23. Lời giải. Gợi ý giải, sinh viên có thể làm theo cách khác
#include <s t d i o . h>
#include < s t d l i b . h>
struct Point {
float x , y , z ;
};
void p r i n t P o i n t ( struct Point p ) {
p r i n t f ( " (%f , %f , %f ) " , p . x , p . y , p . z ) ;
}
struct Point trong_tam ( struct Po int A1 , struct Poi nt B1 , struct Poi nt C1) {
struct Point p ;
p . x = (A1 . x + B1 . x + C1 . x ) / 3 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 1/2 − Mã đề 1717
/>
p . y = (A1 . y + B1 . y + C1 . y ) / 3 ;
p . z = (A1 . z + B1 . z + C1 . z ) / 3 ;
}
return p ;
int main ( ) {
struct Point A, B, C;
// nhap
p r i n t f ( "Hay nhap vao t o a
s c a n f ( "%f%f%f " , &(A. x ) ,
s c a n f ( "%f%f%f " , &(B . x ) ,
s c a n f ( "%f%f%f " , &(C. x ) ,
do A, B, C" ) ;
&(A. y ) , &(A. z ) ) ;
&(B . y ) , &(B . z ) ) ;
&(C . y ) , &(C . z ) ) ;
p r i n t f ( "A (%f , %f , %f ) \ n" , A. x , A. y , A. z ) ;
p r i n t f ( "B (%f , %f , %f ) \ n" , B . x , B . y , B . z ) ;
p r i n t f ( "C (%f , %f , %f ) \ n" , C . x , C . y , C . z ) ;
// h i n h c h i e u
struct Point A1 , B1 , C1 ;
A1 = A; A1 . z = 0 ;
B1 = B ; B1 . z = 0 ;
C1 = C; C1 . z = 0 ;
p r i n t P o i n t (A1 ) ; p r i n t P o i n t ( B1 ) ; p r i n t P o i n t (C1 ) ;
p r i n t f ( "\ n t ro n g tam : " ) ;
p r i n t P o i n t ( trong_tam (A1 , B1 , C1 ) ) ;
}
return 0 ;
Ngày thi: 11/01/2018
CuuDuongThanCong.com
Trang 2/2 − Mã đề 1717
/>