Because tables B and C are not related, for every record in Table A the query is returning each matching record in Table B matched to all of the records in Table C.
So, for example, if you have the following data:
Table A:
LinkingField
1
Table B:
LinkingField ValueB
1 1
1 2
TableC:
LinkingField ValueC
1 A
1 B
Your result set will look like this:
LinkingField ValueB ValueC
1 1 A
1 1 B
1 2 A
1 2 B
So, the question now is, what are you trying to display in your report. If, for example, for every record in Table A you need to show All of the records in Table B and then all of the records in Table C, you'll need to remove Table C from the main report then create a subreport that contains only Table C and link from Table A in the main report to Table C in the subreport. Put this subreport in a group footer for the Table A record.
-Dell