tiểu luận lab report exercises kỹ thuật lập trình

14 0 0
Tài liệu đã được kiểm tra trùng lặp
tiểu luận lab report exercises kỹ thuật lập trình

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ CÔNG THƯƠNGTRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINHLAB REPORT EXERCISESKỸ THUẬT LẬP TRÌNH.

Trang 1

BỘ CÔNG THƯƠNG

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH

LAB REPORT EXERCISES

KỸ THUẬT LẬP TRÌNH

Trang 2

NỘI DUNG 1: CON TRỎCâu 1: Chương trình thực hiện các xử lý cơ bản trên con trỏ.

Code:

#include<stdio.h>int main(){

int *a;int z;z=10;

printf("How works pointer and how to handle pointers:\n");printf("\nValue of z = %d",z);

printf("\nAddress of z = %p\n",&z);a=&z;

printf("\nNow a is assigned with the address of z:");printf("\nAddress of pointer a = %p", a);printf("\ncontent of pointer a = %d\n", *a);z=30;

printf("\nNow, The value of z assigned to 30");printf("\nAddress of pointer a = %p", a);printf("\ncontent of pointer a = %d\n", *a);*a=5;

printf("\nNow, pointer variable a is assigned the value : 5");printf("\nAddress z = %p", &z);

printf("\nValue of z = %d\n", z);return 0;

Kết quả:

~ 2 ~

Trang 3

Câu 2: Dùng con trỏ, viết chương trình để thực hiện các phép tính số học.Code:

#include<stdio.h>int main(){

float a,b;float *x,*y;char *k,kt;k=&kt;

printf("Nhap A va B: ");x=&a;

printf("\nNhap dau: ");scanf(" %c",k);getchar();switch(*k){

case '+':

printf("%f %c %f = %f",*x,*k,*y,*x+*y);break;

case '-':

printf("%f %c %f = %f",*x,*k,*y,*x-*y);break;

case '*':

printf("%f X %f = %f",*x,*y,*x**y);break;

case '/':

printf("%f %c %f = %f",*x,*k,*y,*x/(*y));break;

printf("\nnhap sai!");break;

Kết quả:

~ 3 ~

Trang 4

Câu 3: Dùng con trỏ, viết chương trình để tìm giá trị lớn nhất giữa số.Code:

#include<stdio.h>int main(){

float a,b;float *max;printf("Nhap a va b: ");scanf("%f%f",&a,&b);if(a>b)

printf("\nSo max cua a va b la: %f",*max);}

Kết quả:

Câu 4: Dùng con trỏ, viết hàm hoán đổi 2 số(swap).Code:

#include<stdio.h>void swap(int *x,int *y){

int t=*x;*x=*y;*y=t;}int main(){

int a,b;int *x,*y;

printf("Nhap a va b: ");scanf("%d %d",&a,&b);

Too long to read onyour phone? Save to

read later on yourcomputer

Save to a Studylist

Trang 5

printf("\nTRUOC khi hoan doi: %d %d ",a,b);swap(&a,&b);

printf("\nSAU khi hoan doi: %d %d ",a,b);}

Kết quả:

Câu 5: Viết chương trình thực hiện các chức năng sau:Code:

#include<stdio.h>void input(int *a,int &n);void output(int *a,int &n);void sochan(int *a,int &n);int max(int *a,int &n){

int max=a[0];for(int i=1;i<n;i++){

}return max;}

int main(){

int a[100];int n;input(a,n);output(a,n);sochan(a,n);int m;m=max(a,n);

printf("\nGia tri MAX: %d",m);}

void input(int *a,int &n){

printf("Nhap phan tu n: ");scanf("%d",&n);for(int i=0;i<n;i++)

~ 5 ~

Trang 6

printf("a[%d]= ",i);scanf("%d",a+i);}

void output(int *a,int &n){printf("\nXuat mang: ");for(int i=0;i<n;i++){

printf(" %d",*(a+i));}

Kết quả:

Câu 6:Viết chương trình sử dụng vùng bộ nhớ cấp phát động (HEAP SEGMENT) cho phép

người dùng nhập 2 số thực.Tính tổng, hiệu, tích, thương của chúng.

Code:

~ 6 ~

Trang 7

int main(){

float *a,*b;

a=(float*)malloc(sizeof(float));b=(float*)malloc(sizeof(float));printf("Nhap a va b: ");scanf("%f%f",a,b);getchar();char *c;

c=(char*)malloc(sizeof(char));printf("\nNhap dau: ");scanf("%c",c);getchar();switch(*c){

case '+':

printf("%f + %f = %f",*a,*b,*a+*b);break;

case '-':

printf("%f - %f = %f",*a,*b,*a-*b);break;

case '*':

printf("%f X %f = %f",*a,*b,*a**b);break;

case '/':

printf("%f %: %f = %f",*a,*b,*a/(*b));break;

printf("\nKhong hop le!");break;

Kết quả:

~ 7 ~

Trang 8

: Viết chương trình sử dụng bộ nhớ cấp phát động cho phép người dùng nhập hai 2 ký

Câu 7

tự, sau đó chương trình in ra các ký tự giữa 2 kí tự này theo thứ tự tăng dần.

Code:

#include <stdio.h>#include <stdlib.h>int main() {

char *pc1, *pc2;

pc1=(char *) malloc(sizeof(char));pc2=(char *) malloc(sizeof(char));if (pc1==NULL || pc2==NULL){

printf("Khong du bo nho\n"); return 1;

}

printf("Nhap vao hai ky tu: "); scanf("%c %c", pc1, pc2); if (*pc1>*pc2)

~ 8 ~

Trang 9

char temp=*pc1; *pc1=*pc2;

*pc2=temp; }

char c;

for (c=*pc1;c<=*pc2;c++) {

printf("%c %4d %4o %4X\n", c, c, c, c); }

free(pc1); free(pc2); return 0;}

for(int i=0;i<*n;i++){

printf("a[%d]= ",i);scanf("%f",a+i);}

void xuat(float *a,int *n){

~ 9 ~

Trang 10

printf("xuat:");for(int i=0;i<*n;i++){

printf(" %f",*(a+i));}

float trungbinh(float *a,int *n){

float s=0;for(int i=0;i<*n;i++){

return s/(*n);}

float tongbinhphuong(float *a,int *n){

float s=0;for(int i=0;i<*n;i++){

return s;}

void them(float *a,int *n,int &p,float &x){for(int i=*n;i>p;i ){

void xoa(float *a,int *n,int &p){for(int i=p;i<*n-1;i++){

float timkiem(float *a,int *n,float &tim){

int k=0;

for(int i=0;i<*n;i++){

k=1;break;}

~ 10 ~

Trang 11

k=0;}}return k;}

void tang(float *x,float *y){

int t=*x;*x=*y;*y=t;}int main(){

//Cau a) Nhap mang so THUC//float *a;

a=(float*)malloc(sizeof(float));int *n;

n=(int*)malloc(sizeof(int));printf("Nhap phan tu mang: ");scanf("%d",n);

float d2;

printf("\nPhuong sai: d^2= %f",d2);//Cau f) Tinh do lech chuan//float d;

printf("\nDo lech chuan: d= %f ",d);//Cau g) Them gia tri x vao vi tri p//float x;

//Cau h) Xoa phan tu tai vi tri p//printf("\n\nNhap vi tri can xoa: ");scanf("%d",&p);

~ 11 ~

Trang 12

//Cau i) Tim kiem vi tri x trong mang//float tim;

printf("\nNhap so can tim: ");scanf("%f",&tim);if(timkiem(a,n,tim)){

printf("TIM THAY!");}

printf("KHONG TIM THAY!");}

//Cau j) Sap xep tang giam//for(int i=0;i<*n;i++){

for(int j=i+1;j<*n;j++){

printf("\n\nSap xep TANG: ");xuat(a,n);

for(int i=0;i<*n;i++){for(int j=i+1;j<*n;j++){

printf("\nSap xep GIAM: ");xuat(a,n);

Kết quả:

~ 12 ~

Ngày đăng: 25/05/2024, 17:38

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan