1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tài liệu Bài tập tin học đại cương docx

165 2,7K 27
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Bài tập tin học đại cương
Tác giả Nguyễn Văn Nguyên
Trường học Đại học Bách Khoa Đà Nẵng
Chuyên ngành Tin học đại cương
Thể loại Bài tập
Thành phố Đà Nẵng
Định dạng
Số trang 165
Dung lượng 1,31 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài tập Tin học Đại cương 1PHẦN I : DỮ LIỆU VÀ CHƯƠNG TRÌNH TÍNH TOÁN CÁC BIỂU THỨC 1... Hãy viết chương trình thực hiện các yêu cầu sau: + Nhập số liệu của 30 khối gỗ theo cạnh dài, c

Trang 1

Bài tập Tin học Đại cương 1

PHẦN I : DỮ LIỆU VÀ CHƯƠNG TRÌNH

TÍNH TOÁN CÁC BIỂU THỨC

1 Viết chương trình nhập bán kính R và xuất ra màn hình thể tích V và diện tích S của hình cầu

(V = 4πR3/ 3 và S=4πR2)

* Thuật toán:

+ Có thể khai báo các biến : V,S,R

+ Nhập R từ bàn phím (dữ liệu nhập vào từ bàn phím)

printf("Dien tich hinh cau= %0.2f",s);

printf("\nThe tich hinh cau= %0.2f",v);

getch();

}

* Kết quả chạy demo

+ Vào R=2

+ Dien tich hinh cau la:50.27

Trang 144

Bài tập Tin học Đại cương 144

Trang 145

Bài tập Tin học Đại cương 145

Trang 146

Bài tập Tin học Đại cương 146

Trang 147

Bài tập Tin học Đại cương 147

BÀI TẬP LÀM THÊM

1 Giả sử ta có các khai báo sau:

int x, a[10]; register r; static int u;

Trong các biểu thức sau biểu thức nào hợp lệ ?

&x &a &a[10] &5 &(x+5) &x+5 &r u

2 Giả sử ta có các khai báo sau:

int x, a[10]; register r; static int u;

Trong các biểu thức sau biểu thức nào hợp lệ ?

&x *a *a[0] *5 *(x+5) &x+5 &r *&u

3 Giả sử có vòng lặp sau:

For (i=0; i<lim-1&&(c=getchar())!=’\n’&&c!=EOF;++i) s[i]=c;

Viết lại vòng lặp trên sao cho không cần đến các phép && và ||

4 Giả sử có vòng lặp sau:

For (i=100; i>n &&(c=getchar())!=’\n’&&c!=EOF;i ) s[i]=c;

Viết lại vòng lặp trên sao cho không cần đến các phép && và ||

5 Viết lại hàm strend(char *s, char *t) trả về giá trị 1 nếu dòng s là đoạn cuối của dòng t ( ví dụ t là “123” thì đoạn cuối của t là “”,”3”,”23”,”123”), và trả về giá trị 0 nếu ngược lại

6 Cho 2 hàm sau

int f(int x, int *y) int g(int x, int y)

if (x==0)= return *y if (x==0)= return y

x ; *y+=3; z=*y; x ; y+=2; z=f(x,&y);

Hãy cho biết g(3,3)

7 Cho 2 hàm sau

int f(int x, int *y) int g(int x, int y)

if (x==6)= return *y if (x==6)= return y

x ; *y+=2; z=*y; x ; y+=3; z=f(x,&y);

Hãy cho biết g(3,3)

8 Viết chương trình liệt kê tất cả các số nguyên bằng bình phương của tổng các chữ số của nó

Ví dụ: 81 = (8+1)2û

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 148

Bài tập Tin học Đại cương 148

9 Cho hai dãy số A và B có các phần tử theo thứ tự giảm dần Hãy ghép mảng B vào mảng A cũng có phần tử giảm dần (không dùng mảng phụ) ì

10 Cho hai dãy số A và B có các phần tử theo thứ tự tăng dần Hãy ghép mảng B vào mảng A cũng có phần tử tăng dần (không dùng mảng phụ) ì

11 Viết hàm int InsCircle(double r, double x, double y) trả về giá trị đúng hợc sai tùy thuộc

điểm (x,y) có nằm trong vòng tròn tâm O(0,0) bán kính r hay không Sau đó sử dụng hàm này viết hàm double monte2(double r, int n) trả về giá trị diện tích hình tròn bán kính r được tính bằng phương pháp MonteCarlo với n điểm thử Giả sử đã tồn tại hàm double

range_rand(double min, double max) cho giá trị ngẫu nhiên trên đoạn [min,max]

Chú thích : Phương pháp Monte_Carlo với n điểm thử để tính diện tích hình tròn: Gieo ngẫu

nhiên n điểm trên hình vuông ngoại tiếp hình tròn đó, và đếm số điểm rơi vào bên trong hình tròn (giả sử là n1) Diện tích hình tròn được xấp xỉ bằng diện tích hình vuông nhân với tỉ số n1/n

12 Viết chương trình tính n! với n là số lớn

13 Viết chương trình tính 2nvới n là số lớn

14 Viết chương trình in ra bảng mã ASCII có số thú tự đi kèm : ví dụ A có mã 65

15 Viết chương trình in bảng cửu chương như ở bìa vở học sinh

16.Nhập một ma trận vuông A(n,n) ( với 5≤ n ≤ 10) kiểu nguyên Hãy tính P = S/P ( với S là tổng các phần tử trên đường chéo chính và R là tổng các tử lẻ trên đường chéo phụ, nếu không có phần tử lẻ thì R là tổng các phần tử trên đường chéo phụ), rồi đổi P ra hệ đếm bất kỳ.( cơ số của hệ đếm được nhập từ bàn phím)

17 Để quản lý xe máy, người ta quản lý các thông tin bao gồm: họ tên chủ xe (HT), địa chỉ (DC), số máy (SM), số khung (SK), biển kiểm soát(BKS)

Viết chương trình nhập một danh sách bao gồm các thông tin trên( tối đa 50 đối tượng)

Hiển thị danh sách vừa nhập

Nhập vào một số khung bất kỳ, hiển thị họ tên chủ xe có số khung trùng với số khung vừa nhập

18.Để quản lý các khối gỗ hình hộp chữ nhật, ta tổ chức một mảng các record, mỗi record gồm các trường : Cạnh dài (CD), Cạnh ngắn (CN), chiều cao(CC), Thể tích(TT), giá tiền (TIEN) Hãy viết chương trình thực hiện các yêu cầu sau:

+ Nhập số liệu của 30 khối gỗ (theo cạnh dài, cạnh ngắn,chiều cao)

+ Tính thể tích của từng khối gỗ theo công thức: TT=CD*CN*CC +Tính giá tiền của từng khối gỗ theo công thức: TIEN=TT*DG

Với đơn giá (DG) là giá tiền của 1m3 gỗ ( được nhập từ bàn phím)

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 149

Bài tập Tin học Đại cương 149

+ In ra danh sách các khối gỗ đã nhập ( gồm STT( số thứ tự), TT,TIEN) theo chiều tăng dần của giá tiền

19 Hãy nhập một phân số rồi ước lược phân số

20 Tìm ước số chung lớn nhất của nhiều số

20 Hãy nhập nhiều phân số rồi thực hiện các phép cộng ,trừ, nhân, chia phân số

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 150

Bài tập Tin học Đại cương 150

TÀI LIỆU THAM KHẢO

[1] Ngôn ngữ lập trình PASCAL - Quách Tuấn Ngọc

[2] Turbo PASCAL, cẩm nang tra cứu - Quách Tuấn Ngọc

[3] Tin học Đại cương - Phan Huy Khánh

[4] Turbo Pascal - Đỗ Ngọc Phương

[6] Bài tập tin học chọn lọc - Nguyễn Thanh Hùng

[8] Bài tập Turbo Pascal - Đỗ Phúc

[9] Bài tập Tin học - Hồ sỹ Đàm

[10] Các đề bài tập, các đề thi - Khoa CNTT- ĐTVT-ĐHKT-Đà nẵng

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 151

Bài tập Tin học Đại cương 151

Pgup/PgDn : lªn/xuỉng mĩt trang

^Home/^End : vÒ ®Ìu/cuỉi cöa sư

Delete : xo¸ mĩt ký tù t¹i con trâ

BackSpace: xo¸ mĩt ký tù bªn tr¸i con trâ

^Y : xo¸ mĩt dßng chøa con trâ

^Q +Y : xo¸ tõ con trâ ®Õn cuỉi dßng

3 PhÝm vÒ khỉi:

Clipboard lµ vïng nhí ®Ó lưu khỉi v¨n b¶n t¹m thíi

^K+B/ ^K+K : ®¸nh dÍu ®Ìu/cuỉi khỉi Còng cê thÓ ®¸nh dÍu khỉi b»ng c¸ch gi÷ phÝm Shift vµ dïng phÝm di chuyÓn con trâ

^K+H : Ỉn/hiÖn khỉi

^Ins : ChÐp khỉi sang Clipboard

Shift+Del: C¾t khỉi sang Clipboard

Shift+Ins : D¸n khỉi ị Clipboard vµo t¹i con trâ

^K+ Y (^Del) : xo¸ khỉi

^K+C : sao chÐp khỉi tíi vÞ trÝ con trâ

^K+V : di chuyÓn khỉi tíi vÞ trÝ con trâ

^K+R : ®ôc tÖp trªn ®Üa vµo vÞ trÝ con trâ như mĩt khỉi

^K+W : ghi khỉi vµo tÖp trªn ®Üa

Trang 152

Bài tập Tin học Đại cương 152

^L: t×m hoƯc t×m vµ thay tiÕp

5 Tư hîp phÝm Alt+BkSp ®Î bâ qua 1 thao t¸c so¹n th¶o gÌn nhÍt

II Các lỗi thường gặp khi lập trình

" " expected ThiÕu " "

Ambiguity between 'function1' and

'function2'

NhÌm lĨn gi÷a c¸c hµm

Array bounds missing ] ThiÕu dÍu "[" trong chØ sỉ m¶ng

Array must have at least one

element

M¶ng ph¶i cê Ýt nhÍt mĩt phÌn tö

Array of references is not allowed Kh«ng cho phÐp khai b¸o m¶ng tham chiÕu

Array size too large KÝch th−íc m¶ng qu¸ lín

Assembler statement too long LÖnh Hîp ng÷ qu¸ dµi

Attempting to return a reference to

a local object

Tr¶ vÒ mĩt tham chiÕu chØ ®Õn mĩt ®ỉi t−îng côc bĩ

Attempting to return a reference to

local variable 'identifier'

Tr¶ vÒ mĩt tham chiÕu chØ ®Õn mĩt biÕn côc

bĩ Bad define directive syntax Sai có ph¸p trong ®Þnh h−íng #define

Bad syntax for pure function

definition

§Þnh nghÜa hµm sai có ph¸p

Bit field cannot be static Tr−íng bit kh«ng thÓ thuĩc líp static

Bit field too large Tr−íng bit qu¸ lín

Bit fields must be signed or

unsigned int Tr−íng bit ph¶i lµ kiÓu int cê dÍu hoƯc

kh«ng dÍu Bit fields must contain at least one

bit

Tr−íng bit ph¶i cê Ýt nhÍt 1 bit

Bit fields must have integral type Tr−íng bit ph¶i thuĩc kiÓu nguyªn

Body already defined for this

Cannot cast from 'type1' to 'type2' Kh«ng thÓ Ðp kiÓu nµy thµnh kiÓu kia

Cannot convert 'type1' to 'type2' Kh«ng thÓ chuyÓn kiÓu nµy thµnh kiÓu kia

Cannot define a pointer or

reference to a reference

Kh«ng thÓ ®Þnh nghÜa mĩt con trâ hoƯc mĩt tham chiÕu chØ ®Õn mĩt tham chiÕu

Cannot initialize 'type1' with 'type2' Kh«ng thÓ khịi tao kiÓu nµy víi kiÓu kia

Cannot modify a const object Kh«ng thÓ thay ®ưi mĩt ®ỉi t−îng h»ng

Case outside of switch C¸c chØ ®Þnh case ngoµi lÖnh switch

Case statement missing : ThiÕu ":" trong chØ ®Þnh case

Character constant must be one or H»ng ký tù ph¶i dµi 1 hoƯc 2 ký tù

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 153

Bài tập Tin học Đại cương 153

two characters long

Compound statement missing } LÖnh phøc hîp thiÕu "}"

Conflicting type modifiers NhÌm lĨn trong thay ®ưi kiÓu

Constant expression required CÌn mĩt biÓu thøc h»ng

Constant variable 'variable' must be

initialized

BiÕn h»ng ph¶i ®−îc khịi t¹o

Conversion of near pointer not

allowed

Kh«ng cho phÐp chuyÓn ®ưi con trâ gÌn

Could not find a match for

argument(s)

Kh«ng t×m thÍy sù phï hîp cho ®ỉi sỉ

Could not find file 'filename' Kh«ng t×m thÍy tÖp

Declaration does not specify a tag

or an identifier

Khai b¸o kh«ng chØ ®Þnh mĩt nh·n tªn hoƯc mĩt tªn

Declaration is not allowed here Kh«ng cho phÐp khai b¸o ị ®©y

Declaration missing ; Khai b¸o thiÕu ";"

Declaration syntax error Sai có ph¸p khai b¸o

Declaration terminated incorrectly KÕt thóc khai b¸o kh«ng ®óng

Declaration was expected ThiÕu khai b¸o

Default argument value redeclared Gi¸ trÞ ®ỉi sỉ mƯc ®Þnh bÞ khai b¸o l¹i

Default argument value redeclared

for parameter 'parameter'

Gi¸ trÞ ®ỉi sỉ mƯc ®Þnh bÞ khai b¸o l¹i cho tham sỉ

Default expression may not use

local variables

BiÓu thøc mƯc ®Þnh kh«ng thÓ dïng biÕn côc

bĩ Default outside of switch ChØ ®Þnh default bªn ngoµi lÖnh switch

Default value missing G¸i trÞ default bÞ bâ qua

Default value missing following

parameter 'parameter' G¸i trÞ default bÞ bâ qua sau tham sỉ

Define directive needs an identifier #define cÌn mĩt tªn

do statement must have while LÖnh do ph¶i cê while

do-while statement missing ( | ) | ; LÖnh do-while thiÕu "(" , ")" , ";"

Enum syntax error Sai có ph¸p trong khai b¸o kiÓu enum

Expression expected ThiÕu biÓu thøc

Expression of scalar type expected ThiÕu biÓu thøc kiÓu v« h−íng

Expression syntax VÒ có ph¸p biÓu thøc

extern variable cannot be initialized Kh«ng thÓ khịi t¹o biÕn thuĩc líp extern

Extra parameter in call Thªm tham sỉ trong lÖnh gôi

Extra parameter in call to function Thªm tham sỉ trong lÖnh gôi hµm

File must contain at least one

external declaration

TÖp ph¶i chøa Ýt nhÍt mĩt khai b¸o bªn ngoµi (líp extern)

File name too long Tªn tÖp qu¸ dµi

For statement missing ( | ) | ; LÖnh for thiÕu "(" , ")" , ";"

'function' cannot return a value Hµm nµy kh«ng thÓ tr¶ vÒ mĩt gi¸ trÞ

'function' must be declared with no |

one | two parameter(s)

Hµm nµy ph¶i ®−îc khai b¸o kh«ng| mĩt | hai tham sỉ

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 154

Bài tập Tin học Đại cương 154

'function1' cannot be distinguished

from 'function2'

Hµm nµy kh«ng thÓ ph©n biÖt víi hµm kia

Function 'function' cannot be static Hµm nµy kh«ng thÓ thuĩc líp static

Function 'function' should have a

prototype

Hµm nµy ph¶i cê nguyªn mĨu

Function call missing ) Gôi hµm thiÕu ")"

Function calls not supported Kh«ng cung cÍp c¸c lÖnh gôi hµm

Function definition cannot be a

typedef'ed declaration

§Þnh nghÜa hµm kh«ng thÓ lµ mĩt khai b¸o kiÓu

Function should return a value Hµm ph¶i tr¶ vÒ mĩt gi¸ trÞ

Functions may not be part of a

struct or union Hµm kh«ng thÓ lµ mĩt phÌn cña struct hay

union

Global anonymous union not static Mĩt union toµn côc kh«ng tªn kh«ng thÓ

thuĩc líp static 'identifier' cannot be declared in an

'identifier' is not a member of struct Tªn nµy kh«ng lµ thµnh phÌn cña struct

'identifier' is not a non-static

member and can't be initialized here

Tªn nµy kh«ng lµ thµnh phÌn ®ĩng vµ kh«ng ®−îc khịi t¹o ị ®©y

'identifier' is not a parameter Tªn nµy kh«ng ph¶i lµ mĩt tham sỉ

'identifier' must be a previously

defined enumeration tag

Tªn nµy ph¶i lµ mĩt nh·n tªn cña kiÓu

enum ®· ®−îc ®Þnh nghÜa tr−íc

'identifier' specifies multiple or

duplicate access

Tªn nµy bÞ lƯp trong chØ ®Þnh hoƯc truy cỊp

Identifier expected ThiÕu tªn

If statement missing ( | ) C©u lÖnh if thiÕu "(" , ")"

Illegal character 'character'

(0x'value')

Ký tù nµy bÍt hîp lÖ

Illegal initialization Khịi t¹o bÍt hîp lÖ

Illegal octal digit Ch÷ sỉ b¸t ph©n bÍt hîp lÖ

Illegal pointer subtraction Trõ con trâ bÍt hîp lÖ

Illegal structure operation BÍt hîp lÖ trong thao t¸c kiÓu struct

Illegal to take address of bit field LÍy ®Þa chØ cña tr−íng bit lµ bÍt hîp lÖ

Illegal use of floating point Dïng sỉ thùc bÍt hîp lÖ

Illegal use of pointer Dïng con trâ bÍt hîp lÖ

Implicit conversion of 'type1' to

'type2' not allowed

Kh«ng cho phÐp chuyÓn kiÓu kh«ng rđ rµng

Improper use of typedef 'identifier' Dïng ®Þnh nghÜa kiÓu typedef kh«ng ®óng Incompatible type conversion ViÖc chuyÓn kiÓu kh«ng t−¬ng thÝch

Incorrect configuration file option Chôn cÍu h×nh tÖp bÞ sai

Incorrect number format Sai d¹ng thøc sỉ

Incorrect use of default Sai trong c¸ch dïng default

Invalid combination of opcode and

operands

ViÖc kÕt hîp lÖnh vµ c¸c to¸n h¹ng bÍt hîp

lý Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Trang 155

Bài tập Tin học Đại cương 155

Invalid macro argument separator ViÖc t¸ch c¸c ®ỉi sỉ cña macro bÍt hîp lý Invalid pointer addition Cĩng con trâ bÍt hîp lý

Invalid register combination Tư hîp thanh ghi bÍt hîp lý (nh− BP+BX) Invalid use of dot Dïng ký tù chÍm bÍt hîp lý

Last parameter of 'operator' must

have type 'int'

Tham sỉ cuỉi cïng cña to¸n tö ph¶i thuĩc kiÓu int

Lvalue required CÌn mĩt lvalue kh¶ biÕn

Macro argument syntax error Sai có ph¸p trong ®ỉi sỉ cña macro

Macro expansion too long ViÖc bung macro qu¸ dµi

main must have a return type of int Hµm main() ph¶i tr¶ vÒ kiÓu int

Memory reference expected ThiÕu tham chiÕu bĩ nhí

Misplaced break §Ưt tõ kho¸ break sai chì

Misplaced continue §Ưt tõ kho¸ continue sai chì

Misplaced decimal point §Ưt dÍu chÍm thỊp ph©n sai chì

Misplaced else §Ưt tõ kho¸ else bÞ sai chì

Multiple declaration for 'identifier' Khai b¸o tªn bÞ lƯp

Must take address of a memory

location

Ph¶i lÍy ®Þa chØ trong bĩ nhí

Need an identifer to declare CÌn mĩt tªn ®Ó khai b¸o

No : following the ? ThiÕu dÍu ":" sau to¸n tö "?"

No file name ending Kh«ng kÕt thóc tªn tÖp

No file names given Kh«ng cho c¸c tªn tÖp

No type information ThiÕu th«ng tin vÒ kiÓu

Nonportable pointer conversion ViÖc chuyÓn kiÓu con trâ bÍt dÞch

Not a valid expression format type Kh«ng ph¶i mĩt kiÓu biÓu thøc hîp lÖ

Not an allowed type Kh«ng ph¶i mĩt kiÓu cho phÐp

Numeric constant too large H»ng sỉ qu¸ lín

Objects of type 'type' cannot be

initialized with { }

C¸c ®ỉi t−îng kiÓu nµy kh«ng thÓ khịi t¹o víi { }

operator -> must return a pointer or

a class To¸n tö -> ph¶i tr¶ vÒ mĩt con trâ hoƯc mĩt

líp operator [] missing ] To¸n tö [ ] thiÕu ]

Parameter names are used only

with a function body

C¸c tªn tham sỉ chØ ®−îc dïng trong th©n hµm

Parameter 'number' missing name ThiÕu tªn tham sỉ

Pointer to structure required on left

side of -> or ->* Con trâ chØ ®Õn struct ph¶i ị bªn tr¸i ->

hoƯc ->*

Reference initialized with 'type1',

needs lvalue of type 'type2' Khịi t¹o tham chiÕu víi kiÓu nµy cÌn lvalue

kiÓu kia Reference variable 'variable' must

be initialized

BiÕn tham chiÕu ph¶i ®−îc khịi t¹o

Repeat count needs an lvalue §Õm vßng lƯp cÌn mĩt lvalue

sizeof may not be applied to a bit

tr−íng bit sizeof may not be applied to a Kh«ng thÓ ¸p dông to¸n tö sizeof vµo mĩt

Nguyễn Văn Nguyên- Khoa CNTT-ĐTVT Đại học Bách Khoa Đà Nẵng

Ngày đăng: 25/12/2013, 19:15

HÌNH ẢNH LIÊN QUAN

1. Viết chương trình nhập bán kín hR và xuất ra màn hình thể tích V và diện tích S của hình cầu  - Tài liệu Bài tập tin học đại cương docx
1. Viết chương trình nhập bán kín hR và xuất ra màn hình thể tích V và diện tích S của hình cầu (Trang 1)
Chú thích: Phương pháp Monte_Carlo vớ in điểm thử để tính diện tích hình tròn: Gieo ngẫu nhiên n điểm  trên hình vuông ngoại tiếp hình tròn đó, và đếm số điểm rơi vào bên trong hình  tròn (giả sử là n1) - Tài liệu Bài tập tin học đại cương docx
h ú thích: Phương pháp Monte_Carlo vớ in điểm thử để tính diện tích hình tròn: Gieo ngẫu nhiên n điểm trên hình vuông ngoại tiếp hình tròn đó, và đếm số điểm rơi vào bên trong hình tròn (giả sử là n1) (Trang 148)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w