01/10/2018, 16:05
Lỗi tính tổng trong vòng lặp
Chào mọi người, mình có bài tập xử lí mảng 2 chiều: tính tổng các hàng lẻ nhưng gặp lỗi khi tính tổng ở lòng lặp bên dưới. Mọi người xem giúp mình, cảm ơn.
#include<stdio.h>
#include<conio.h>
void main()
{
int a[100][100], i, t;
int(*p)[100], n, m;
int s = 0;
p = a;
printf("nhap so dong:");
scanf_s("%d", &n);
printf("
nhap so cot:");
scanf_s("%d", &m);
for (i = 0; i < n; i++)
{
for (t = 0; t < m; t++)
{
printf("
a[%d][%d]=", i, t);
scanf_s("%d", *(p + i) + t);
}
}
for (i = 0; i < n; i++)
{
for (t = 0; t < m; t++)
{
printf("%4d", (*(p + i))[t]);
}
printf("
");
}
for (i = 0; i < m; i++) **//Loi o vong lap nay**
{
if (i % 2 == 0)
{
for (t = 0; t < n; t++)
{
s += ((*(p + i))[t]);
}
printf("
tong hang %d = %d", i+1, s);
}
s = 0;
}
_getch();
}
Bài liên quan
Cụ thể lỗi của bạn là như thế nào?
mình muốn lưu vào biến s là kết quả tính tổng nhưng khi trả s thì lại ra kết quả rác
Mình nghĩ lỗi ở đây, mục đích của việc gán lại s = 0 của bạn là gì thế =))
tính tổng của mỗi hàng riêng nên phải gán lại s = 0 . Nếu không gán lại thì tổng của hàng tiếp theo sẽ lấy s của hàng trên tính tiếp chứ nhỉ?
Lỗi này có thể do bạn dùng
scanf_s
bạn thử chuyển
scanf_s
sangscanf
thử xem