30/09/2018, 18:48

Các bác cho e hỏi sao cái code này bị lỗi vậy?

`#include<stdio.h>
double trungbinh(int n,double arr[]);
int main()
{
	int n,i;
	double arr[500];
	printf("nhap vao kich thuoc: "); scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		printf("u[%d]: ",i);scanf("%f",&arr[i]);
	}
	trungbinh(n,arr);
}

double trungbinh(int n,double arr[])
{
	float tb=0;
	int i;
	for(i=0;i<n;i++)
	{
		tb=arr[i]+tb;
	}
	printf("trung binh = %.1f",tb/n);
}`
bphvcg viết 20:56 ngày 30/09/2018

khai báo thư viện thiếu kìa bạn ơi, vòng lặp for thiếu điều kiện

code bạn viết về đề gì nhìn k hiểu hì hết

Cao Tín viết 21:03 ngày 30/09/2018

cái thư viện như vậy là đủ rồi. Mình dùng dev C++ nên không cần dùng getch() .
còn vòng lặp for không biết thiếu điều kiện gì bạn.
cái đề yêu cầu nhập vào phần tử mảng, tính trung bình của mảng đó.

tvp viết 20:59 ngày 30/09/2018

Bởi vì bạn khai báo double arr[500] nên hàm scanf trong vòng for phải sửa lại là scanf("%lf",&ar[i]). C chỉ cho ép kiểu theo 1 chiều nên khi bạn nhập vào dữ liệu sẽ bị sai.

Trần Tuấn An viết 20:50 ngày 30/09/2018

nếu là double thì khi scanf phải là “%lf” bạn thử xem có nhầm chỗ đó ko?

Bài liên quan
0