01/10/2018, 16:58

Cho em hỏi code em sai chỗ nào?

em dùng hàm để tìm xem có bao nhiêu số âm, số dương vào số 0 trong mảng nhưng code em ko chạy. Em ko biết sai chỗ nào mong các cao nhân chỉ giúp

#include <stdio.h>
int i,n,s,k,t;
int kiemtra(int a[i])
{

	for (int i = 0; i <=n-1; ++i)
	{
		if (a[i]<0)
		{
			s=s+1;
		}
	}
	for (int i = 0; i <=n-1; ++i)
	{
		if (a[i]==0)
		{
			k=k+1;
		}
	}
	for (int i = 0; i <=n-1; ++i)
	{
		if (a[i]>0)
		{
			t=t+1;
		}
	}
	printf("
so phan tu duong la: %d
",t );
	printf("so phan tu bang 0 la:%d 
",k);
	printf("so phan tu am la: %d
",s );
}
int main(int argc, char const *argv[])
{
	int n,s,k,t;
	int a[100];
	s=0;
	k=0;
	t=0;
	do{
		printf("nhap vao so phan tu cua mang: 
");
		scanf("%d",&n);
		if (n<=0)
		{
			printf("so phan tu phai lon hon 0
");
		}
		}while(n<=0);
		for (int i = 0; i <=n-1; ++i)
		{
			printf("nhap phan tu thu %d: 
",i+1 );
			scanf("%d",&a[i]);
		}

	for (int i = 0; i <=n-1; ++i)
	{
		printf("%d ",a[i]);
	}
	kiemtra(a[i]);

	return 0;
}
Nguyễn Đình Anh viết 19:00 ngày 01/10/2018

Lần sau nhớ Markdown code để mọi người dễ nhìn bạn nhé !

Làm sao để có thể hiển thị syntax highlighting bằng markdown? Các bạn phải đánh dấu ``` như ví dụ dưới đây Chú ý, dấu ``` được tạo ra bởi nút nằm bên trái số 1 trên bàn phím, nút này sẽ là ~ khi bấm giữ Shift Ví dụ cho C Nội dung: ``` void main() { } ``` Và đừng quên ``` ở cuối Kết quả void main() { } Ví dụ cho Pascal Nội dung: ``` Program HelloWorld; Begin WriteLn('Hello world!') {no ";" is required after the last statement of a block - adding one adds a "null stateme…

Le Thien Hoang viết 19:07 ngày 01/10/2018

Truyền cả mảng vào hàm chứ truyền mỗi a[i] là 1 phần tử thì chạy kiểu gì,chưa kể toàn biến toàn cục.Mà đếm thì 1 vòng lặp chứ sao phải tận 3 vòng lặp.

tuyen dinh viết 19:10 ngày 01/10/2018

Em có thể dùng IDE nào đó để debug (set break point, kiểm tra giá trị). Anh thường dùng Code Block.
Trong đoạn code của em anh nghĩ vấn đề ở chỗ em sử dung biến local và toàn cục

Bài liên quan
0