TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM KHOA ĐIỆN-ĐIỆN TỬ BM: ĐIỆN TỬ VIỄN THÔNG Chữ ký giám thị Chữ ký giám thị ĐỀ THI CUỐI KỲ HK NĂM HỌC 2014 - 2015 Môn: Kỹ thuật lập trình giao tiếp Mã mơn học: PRIN337664 Đề số/Mã đề: 01 Đề thi có trang Thời gian: 75 phút Điểm chữ ký Sử dụng tài liệu giấy, không sử dụng laptop, điện thoại SV làm trực tiếp đề thi, viết kết vào ô dòng qui định CB chấm thi thứ CB chấm thi thứ hai Họ tên: Mã số SV: Số TT: Phòng thi: Câu 1: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int z,a,x=2; float b,y=5; a=2;b=9.5; z=++a+b-x/y; printf("\n %d %d %d ",a,z,x); } Câu 2: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int a[]={2015,06,25,2,10}; int *p1,*p2; p1=a; p2=&a[3]; *p1=*p2+a[2]; *p2=a[0]/(*p1); printf("\n%d %d %d %d %d",a[0],a[1],a[2],a[3],a[4]); } Câu 3: (1.0 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { unsigned int a,b,c; a=b=5;c=0; for(int i=1;i0) { c+=i; b ; a=b*a; printf("\n a=%d; b=%d; c=%d; ",a,b,c); } } } Câu 4: (1.0 điểm) Cho đoạn chương trình đây, viết lại chương trình sử dụng cấu trúc lặp WHILE cho chức chương trình không thay đổi #include void main() { int i=0; for(;;i+=3) { if(i>10)break; else printf("\n %d",i); } } ……………………………………………… ……………………………………………… ……………………………………………… ……………………………………………… ……………………………………………… ……………………………………………… Câu 5: (0.5 điểm) Cho đoạn chương trình đây, viết lại chương trình sử dụng cấu trúc rẽ nhánh IF, cho chức chương trình khơng thay đổi #include void main() { int x; printf("\n Nhap gia tri cua x= "); scanf("%d",&x); switch(x) {case 1:case :case 5:case 7:case 9: {printf("\n Ban da nhap so le");break;} case 2:case :case 6:case 8: {printf("\n Ban da nhap so chan");break;} default:{printf("\n Chi nhap so tu 0-9");break;} } } Câu 6: (1.0 điểm) Cho biết kết in hình sau chạy chương trình sau: #include unsigned int HAM(unsigned int , int *, int *, int *, char * ); Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 1/1 void main () { int b,c,d; unsigned int a; char e; a=0; b=23; c=888; a=HAM(a,&b,&c,&d,&e); if(a) { printf("%d - %d } else printf("%d - %d } unsigned int HAM(unsigned int { if(*e%2==1) { a=a+10; *b=*d+5; *d-=10; *c=++*c; return 1; } else { *b=*c=*d-5; *d+=10; return 0; } } a d=2010; e=15; %d - %d - %d ",a,b,c,d,e); %d ",a,b,d); a, int *b, int *c, int *d, char *e ) b c d e Câu 7: (2.5 điểm) Dưới khung mã nguồn chương trình thực chức năng: khởi tạo mảng chiều có số lượng n phần tử Xác định số lượng số lẻ có mảng In hình giá trị số lẻ có phần đơn vị mảng vừa khởi tạo Giả sử dãy số nhập là: 100 17 20 27 117 55 83 #include #include int dem=0; void ham1(int *, int ); int ham2(int x) { if(x%10==7)return 1; else return 0; } void main() { int *p,n; n=10; p=(int *)malloc(n*sizeof(int)); if(p!=NULL) { printf("\n Nhap gia tri cho cac phan tu\n"); //Hoàn thành đoạn chương trình để nhập giá trị cho phần tử mảng quản lý trỏ p Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 1/1 //Hãy gọi hàm ham1 truyền vào tham số sau cho thực ham1 số lượng phần tử mang giá trị lẻ lưu vào biến dem printf("\n So luong so le la %d", dem); printf("\n Cac so le la "); for(int i=0;i