A broken tooth is a much less complex injury than a broken arm. In many cases you don't even need to be a dentist to diagnose it. Try walking into a dentist office with a more complex injury that could involve multiple different dental specialties and severe underlying complications. You aren't going to get an immediate upfront price.
2. Dental x-rays are more often than not elective procedures. It's much easier to comparison shop elective procedures than emergency procedures. Therefore market forces frequently compel the dentist to come up with an up front cost for an x-ray.
The same market forces don't apply to hospitals because you can't wait a week or more while you shop around for treatment for a shattered hip.