Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) (1 đang xem) (1) Khách
Được ưa thích: 0
|
|
CHỦ ĐỀ - Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây)
|
|
Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
đoạn code này là sao vậy?
Code: | (11 > 6) * 100 + ( 'A' < 'Z' ) * 'B'
|
Sao kết quả của nó là 166
|
|
|
|
|
Sửa chữa lần cuối: 19/11/2009 03:08 bởi nhatbui.
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
utcung (Thành viên)
Năng động
Bài viết: 32
|
Trả lời: KTLT???? 14 Năm, 4 Tháng trước đây
|
|
Thì nó so sánh 11>6 là true nghĩa la bằng 1
---> 1 * 100 = 100
'A' bằng 65
'Z' bằng 89
--> 'A'<'Z' nghĩa la true
---> 1* 66 ==66
==> 100 + 66 = 166
|
|
|
|
|
Chân lý của cuộc sống là bắt đầu từ những cái nhỏ bé nhất
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
thanks
|
|
|
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Bạn nào có cách nhớ cái bảng mã ASCII của môn KTLT không?
|
|
|
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
mono (Thành viên)
Năng động
Bài viết: 35
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
không nhất thiết bạn phải nhớ cả cái bảng đó đâu.
bạn chỉ cần nhớ 1 số kí tự thôi à. ví dụ: 'A' = 65 và 'a' = 97.'a'='A' + 32, và học thuộc chữ cái từ a ->z tương tự như A - Z. và học thuộc 1 số kí tự hay gặp thôi chẳng hạn: xuống hàng hay tab là ok rồi
|
|
|
|
|
Sửa chữa lần cuối: 18/11/2009 09:24 bởi mono.
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
các toán tử này là sao vậy?
- ?:
- ^
- sizeof()
|
|
|
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
mono (Thành viên)
Năng động
Bài viết: 35
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
- ?: toán tử điều kiện
(biểu thức)?(thực hiện khi biểu thức đúng): (thực hiện thi biểu thức sai)
ví dụ: 2>1?"đúng":"sai"
-sizeof(): trả về giá trị byte của biến hoặc kiểu dữ liệu
ví dụ: sizeof(int): 2 byte;
-^: toán tử bit XOR, trả về 0 nếu 2 bit giống nhau, ngựoc lại bằng 1;
ví dụ:
0101
XOR 0011
---------
0110
cái này ít dùng lắm bạn, chủ yếu trong lập trình Assembly.
|
|
|
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
int guess(int n)
{
if (n == 1)
return 1;
else
return guess(n – 1);
}
Tại sao kết quả là 1. Khi thực hiện guess(5)
|
|
|
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
các bạn giải thích dùm mình bài này:
Code: | int f(int x, int n);
void main()
{
int a[5] = {1, 2, 3, 4, 5};
int b;
b = f(a, 5);
}
int f(int x, int n)
{
if (n == 0)
return x[0];
else
return x[n – 1] + f(x, n – 1);
}
|
cảm ơn nhiều
|
|
|
|
|
Sửa chữa lần cuối: 19/11/2009 03:03 bởi nhatbui.
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
sergio viết:
int guess(int n)
{
if (n == 1)
return 1;
else
return guess(n – 1);
}
Tại sao kết quả là 1. Khi thực hiện guess(5)
Vòng lặp chạy giảm từ 5-->1.Khi chạy về đến guess(1) thì gặp if (n == 1)
return 1;
Nên hàm trả về 1.
|
|
|
|
|
Unlock the worlds potential with HSBC
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
ankilog viết:
Vòng lặp chạy giảm từ 5-->1
Làm gì có vòng lặp ở đây???????
|
|
|
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Các bạn thắc mắc về code, hãy gửi đầy đủ cả cầu hỏi (hoặc bài toán) và đặt code vào thẻ [_code][_/code] (nhớ bỏ dấu _ nhé) để mọi người dễ xem
Vd:
Code: | int guess(int n)
{
if (n == 1)
return 1;
else
return guess(n – 1);
}
|
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
utcung (Thành viên)
Năng động
Bài viết: 32
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Đây ko phải là vòng lặp mà là đệ qui
Khi mình truyền vào hàm guess(5)
thì nó sẽ so sánh n=5 > 1
nên nó sẽ đi vào guess(n-1)
tới khi nó đệ qui hết và thoát khỏi hàm
thì nó sẽ xuất ra kết quả
Cách diễn giải của mình có thể khác 1 số bạn nhưng nói chung là vậy
|
|
|
|
|
Chân lý của cuộc sống là bắt đầu từ những cái nhỏ bé nhất
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Bài này hok phải là lặp, mà là Đệ quy, Đệ quy là gì thì bạn xem lại nhé, đừng nên chỉ giải bài tập mà không xem lý thuyết, dễ chết lắm.
Mình lý thuyết cũng còn yếu nên giải thích theo cách nghĩ của mình thế này.
Ta có một hàm guess, hàm này sẽ trả về giá trị một nếu tham số truyền vào cho nó bằng một, nếu không bằng 1 thì nó sẽ gọi lại chính nó nhưng với tham số trừ đi một.
Như vậy, lần đầu, ta truyền 5 vào hàm, 5 khác 1-> nó gọi lại nó với tham số là 4, 4 vẫn khác 1-> guess(3)->guess(2)->guess(1) à, hên quá, lần này tham số truyền vào là một rồi, cho nên kết quả cuối cùng của cái hàm guess(5) là 1.
Hì, có khó hỉu ko bạn.
Hình như cái đệ quy là cái nhức đầu nhất trong KTLT thì phải, mấy cái kia khó nhưng gặm hoài cũng mòn, còn cái lày thì ... Thực sự mình cũng bó tay
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Hì, đang viết thì có út cưng trả lời mất tiu gòi
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: KTLT???? 14 Năm, 4 Tháng trước đây
|
|
utcung viết:
Thì nó so sánh 11>6 là true nghĩa la bằng 1
---> 1 * 100 = 100
'A' bằng 65
'Z' bằng 89
--> 'A'<'Z' nghĩa la true
---> 1* 66 ==66
==> 100 + 66 = 166
Cám ơn nhé! Hồi trước Nhật cũng hiểu nhưng còn hơi mập mờ. Giờ thì hiểu rõ rồi. ^^
|
|
|
|
|
Hãy để đôi tay bạn làm nên điều kì diệu!
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
sergio viết:
các bạn giải thích dùm mình bài này:
Code: | int f(int x, int n);
void main()
{
int a[5] = {1, 2, 3, 4, 5};
int b;
b = f(a, 5);
}
int f(int x, int n)
{
if (n == 0)
return x[0];
else
return x[n – 1] + f(x, n – 1);
}
|
cảm ơn nhiều
n=5
x[4]+f(x,4)
x[4]+x[3]+f(x,3)
x[4]+x[3]+x[2]+f(x,2)
x[4]+x[3]+x[2]+x[1]+f(x,1)
x[4]+x[3]+x[2]+x[1]+x[0] = 15
Nếu hiểu theo thuật đệ quy thì sẽ như thế này! Không bik phải không bạn nào giải thích zùm hen
|
|
|
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
|
|
|
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
ố ồ, quên nhìn. thì ra là còn 1 bài nữa.
Bạn A-T-K giải thik vậy là rõ ràng quá rồi đó.
Mình cũng toàn phải làm như vậy mới ra.
chỉ sợ đề thi nó cho b = f(a, 100) thôi.
Hì.
À, lần tr hỏi bạn mono, bạn ý nói, để chắc chắn đánh thắng những đoạn mã đệ quy cho dù số lần gọi hàm là bao nhiêu đi chăng nữa, thì các bạn phải học thuộc dạng hàm.
Vd Hàm này là để tính tổng mảng, hàm kia là để tính tổng các số dương trong mảng,.. vân vân và phân vân
Tiếc là T vẫn chưa đủ công lực để đạt đến cảnh giới đó
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Tài viết:
ố ồ, quên nhìn. thì ra là còn 1 bài nữa.
Bạn A-T-K giải thik vậy là rõ ràng quá rồi đó.
Mình cũng toàn phải làm như vậy mới ra.
chỉ sợ đề thi nó cho b = f(a, 100) thôi.
Hì.
À, lần tr hỏi bạn mono, bạn ý nói, để chắc chắn đánh thắng những đoạn mã đệ quy cho dù số lần gọi hàm là bao nhiêu đi chăng nữa, thì các bạn phải học thuộc dạng hàm.
Vd Hàm này là để tính tổng mảng, hàm kia là để tính tổng các số dương trong mảng,.. vân vân và phân vân
Tiếc là T vẫn chưa đủ công lực để đạt đến cảnh giới đó
Công lực thì nhìn hàm không ra nổi nhưng mà nếu cho kiểu b=f(a,100) thì chỉ cần làm 2 , 3 cái là nghĩ ngay đến việc công hay nhân mảng lại. ai lại ngồi làm đến cái 99 cho chết chứ
|
|
|
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
mono viết:
-^: toán tử bit XOR, trả về 0 nếu 2 bit giống nhau, ngựoc lại bằng 1;
ví dụ:
0101
XOR 0011
---------
0110
cái này ít dùng lắm bạn, chủ yếu trong lập trình Assembly.
Không hiểu gì hết trơn! Bạn giải thích rõ hơn với những ví dụ dưới dùm hen
unsigned int i=4, j=7, k;
i=i^j;
i=j^j;
i=i^j;
cout<<i<<""<<j;
Kết quả là 7 4
unsigned int i=4, j=7, k;
k=(~i)&1;
cout<<k
Kết quả ?
unsigned int i=4, j=7, k;
i=i^j;
cout<<k
Kết quả là 3
unsigned int i=4, j=7, k;
i=i | j;
cout<<k
Kết quả là 7
Thêm 2 bài này nữa
double a=2.0 , b= 4.5 , c=1.5, d=-1.0;
int n=9 . m= 15;
Kết quả của a+b/c+d sao lại bằng 4.0
public static void foo(int x)
{
if(x>0)
foo(x-3);
cout<< "" +x ;
}
Khi gọi foo(6) nó lại cho kết quả là 0 3 6
Cám ơn nhìu nhìu
|
|
|
|
|
Sửa chữa lần cuối: 20/11/2009 11:20 bởi 4nh_Thj_k0.
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Lần sau bạn ATK gửi bài nhớ đánh số thứ tự và cho vào thẻ code, không phải thẻ quote nhé.
Mấy cái &,|,^,~ thì nói sau, thấy bài
nào dễ bụp trước.
Code: |
double a=2.0 , b= 4.5 , c=1.5, d=-1.0;
int n=9 . m= 15;
a+b/c+d = a+(b/c)+d =2+(4.5/1.5)+(-1)=4
|
chứ bằng mấy nữa, Thứ tự ưu tiên là nhân chia -> Cọng trừ mà.
Bài cuối cùng bạn viết sai chính tả
cout<< ""<<x ; chứ hổng phải cout<< "" +x ; nhé.
Cái này thì giải thích đơn giản là, cứ mỗi lần gọi đệ quy, nó lại thực hiện lệnh in ra tham số truyền vào của hàm đệ quy.
lần lượt là 6->3->0 nhưng mà do khi thực thi đệ quy nó làm từ trong ra ngoài nên phải là 0->3->6 mới đúng.
Còn đối với các bài Có sử dụng toán tử Bitwise. Không biết có cách nào hay hơn không, nhưng T chỉ biết mỗi cách này thui.
1.Đầu tiên, chuyển đổi nó qua hệ nhị phân
2.Đặt 2 số chồng lên nhau (như bạn môn làm ý)
2. dựa vào nguyên tắc sau để tính theo hàng dọc
Code: |
& Toán tử bitwise AND, trả lại giá trị 1 nếu cả hai bit cùng là 1.
| Toán tử bitwise OR, trả lại giá trị 1 nếu một trong hai bit là 1.
^ Toán tử bitwise XOR, trả lại giá trị 1 nếu hai bit có giá trị khác nhau
~ Toán tử bitwise NOT, đảo 0 thành 1 và ngược lại
|
Vd với bài này
Code: | unsigned int i=4, j=7, k;
k=i^j;
cout<<k; //=3
|
Đầu tiên và viết nó về dạng Nhị phân (Binary), mình viết tắt là B nhé
i=4=100B;
j=7=111B
bắt đầu tính nè
100
^111
-----
011B=3D
Vậy là hết thắc mắc nhé
Xem kỹ hơn ở đây nè http://vi.wikipedia.org/wiki/Ph%C3%...%C3%A1n_thao_t%C3%A1c_bit
CÒn mấy bài trên, ko bít bạn ATK kím mô ra, chịu khó dẫn nguồn để anh em kiểm chứng nhé, vì có vẻ là bạn đã copy sai hoặc thiếu. Bài đầu tiên cho vào máy của mình thì nó ra là 77, ko phải 74
rồi mấy bài sau nữa.
Mà như bạn mono nói, thì cái này ít ra lắm, đừng có gặm mãi khúc này mà bí lun đó
|
|
|
|
|
Sửa chữa lần cuối: 20/11/2009 14:01 bởi Tài.
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Quên mất! Rút kinh nghiệm cho lần sau vậy ^^!
Toàn bộ cái đó là tài liệu tay của Trung Tâm Công Nghệ Thông Tin của trường mình áh!==> Không có nguồn làm sao đưa
Đề viết hoàn toàn chính xác (so với cái L đang đọc )nhưng mà đọc mãi không hiểu nó làm răng mà lại ra kết quả thía nên hỏi lại!
|
|
|
|
|
...Và cho dù tình yêu chẳng phai màu
Anh đã chọn cho mình đường phía trước
Thì hãy tin, đừng bao giờ đi ngược
Bởi em không thể đợi anh cuối con đường...
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Ẹc, của trung tâm à.
có vẻ là vẫn sai đấy.
có mấy bài cho i,j,k, thía mà k hok bao giờ xài đến cả
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
mono (Thành viên)
Năng động
Bài viết: 35
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
he he. diễn đàn bữa nay đông vui quá. mà mình chưa thấy các bạn chuyển qua cơ sở dữ liệu nhỉ. Ăn thua ở cơ sở dữ liệu ah. . chúc các bạn ôn thi tốt ah.
|
|
|
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
Thứ 2 về tao phá mày, ko cho mày học, ngồi đó mà cười
|
|
|
|
|
[Tài] thì hổng có mà [Tật] thì nhiều
....................................
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 14 Năm, 4 Tháng trước đây
|
|
có ai có đề thi CTDL của thầy Quán ko?
share cho mình với
cảm ơn nhiều
ko có bài tập CTDL để làm
chỉ toàn coi lý thuyết ko hiểu gì cà
khó nhất vẫn là danh sách liên kết
Chẳng hiểu gì về nó hết
|
|
|
|
|
I am Sergio
|
|
Đã khóa chức năng gửi bài.
|
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 12 Năm, 7 Tháng trước đây
|
|
Giải thích giùm với mọi người ơi:
Code: | #include<iostream.h>
#include<conio.h>
int f(int a, int b);
int x,y;
void main()
{
clrscr();
x=1;y=2;
f(x,y);
cout<<x<<" "<<y<< endl;
}
int f(int a, int b)
{
int x;
a++;
b+=4;
x++;
y++;
}
|
Sao kết quả lại ra là 1 3?
Còn cái này:
Code: | #include<iostream.h>
#include<conio.h>
int f(int a, int b);
int x,y;
void main()
{
clrscr();
x=1;y=2;
f(x,y);
cout<<x<<" "<<y<< endl;
}
int f(int a, int b)
{
a++;
b+=4;
x++;
y++;
}
|
Sao kết quả lại là 2 3?
|
|
|
|
|
Sửa chữa lần cuối: 13/08/2011 03:58 bởi nhatbui.
|
|
Hãy để đôi tay bạn làm nên điều kì diệu!
|
|
Đã khóa chức năng gửi bài.
|
AH18 (Admin)
Admin
Bài viết: 146
|
Trả lời: Thắc mắc về một số đoạn code KTLT (ai cần thì gửi vào đây) 12 Năm, 7 Tháng trước đây
|
|
nhatbui viết:
Giải thích giùm với mọi người ơi:
Code: | #include<iostream.h>
#include<conio.h>
int f(int a, int b);
int x,y;
void main()
{
clrscr();
x=1;y=2;
f(x,y);
cout<<x<<" "<<y<< endl;
}
int f(int a, int b)
{
[b]int x;[/b]
a++;
b+=4;
x++;
y++;
}
|
Sao kết quả lại ra là 1 3?
Còn cái này:
Code: | #include<iostream.h>
#include<conio.h>
int f(int a, int b);
int x,y;
void main()
{
clrscr();
x=1;y=2;
f(x,y);
cout<<x<<" "<<y<< endl;
}
int f(int a, int b)
{
a++;
b+=4;
x++;
y++;
}
|
Sao kết quả lại là 2 3?
Hi
Có thể miêu tả 2 đoạn code trên như thế này.
-Khai báo 2 biến toàn cục x,y <2 biến này sẽ thay đổi giá trị khi gọi và thay đổi nó ở bất cứ hàm nào ở trong chương trình >.
-Trong hàm main gán giá trị cho biến x,y. Sau đó truyền 2 biến này vào hàm f.
-Trong hàm f(int a, int b). giá trị của a = giá trị của x, giá trị b=giá trị của y <Nhớ là giá trị thôi nha>. Các tác trong hàm thì mình ko giải thích nữa.
Vấn đề ở đây:
-bài code lừa 2 cái: Biến cục bộ và biến toàn cục, Tham chiếu và tham trị.
- Trong bài sử dụng cách truyền tham trị. Tức là không làm thay đổi giá trị biến khi truyền biến đó vào hàm. nên khi giá trị của x=1,y=2 có truyền vào hàm cũng chả ảnh hương gì đền giá trị của nó. Nên giá trị của nó thay đổi do nó là biến toàn cục.
- Vì nó là biến toán cục nên mọi sự thay đổi giá trị của nó trong các hàm đều ảnh hưởng đến nó (x và y).
-Ở đoạn code 1
int x;
a++;
b+=4;
x++;
y++;
có 2 đoạn code ảnh hưởng đến giá trị của x và y là. x++, y++ => x=1+1=2, y=2+1=3. Nhưng vấn đề ở đây là do nó khai báo int x trong hàm nên x++ ở đây nó hiểu là biến x ở trong hàm chứ không phải là biến x toàn cục ngoài kia. Nên khi xuất ra giá trị là 1 và 3.
- đoạn code 2: do ko có khai báo int x trong hàm nên giá trị của nó là 2 và 3.
Theo mình hiểu thì thế.
Tham khảo tham chiếu và tham trị: http://phpcodevn.com/home/c-cpp-c-s...u-a-tham-tri-trong-c.html
|
|
|
|
|
Đã khóa chức năng gửi bài.
|
|
|
|
|
|