Pres. Truman had to look at several possible scenarios for defeating Japan. The most conventional was an invasion by sea landing in Kyushu and pushing north to the plains of Tokyo. Codenamed Operation Olympic US causalities could have been as high as 500,000 per a joint chiefs study at the time. Japanese causalities could well have numbered over a million.
The US Navy was pushing for a blockade of Japan. Though the plan was feasible, it would have taken years with no guarantee of success. The damage caused to the Japanese civilian population, who would have suffered most during and long term blockade would have been immeasurable. It also would not have necessarily ended the war and much of the power structure would still have been in place, requiring boot on the ground to insure total victory.
The atomic bomb offered a quick solution to a long term problem. It demonstrated such destructive force that no rational government could continue a conflict. In light of historical evidence his actions where wholly appropriate.
Most Americans argue that using the atomic bombs to kill Japanese civilians was the right choice because it ended the war quicker and saved lives. It's a good argument. However, what can you say if other countries use the same argument when they want to nuke civilians? Is it morally right for Americans to say, "We can nuke civilians, but nobody else can nuke civilians."
In 1961 the United Nations passed General Assembly Resolution 1653. It says:
"(a) The use of nuclear and thermo-nuclear weapons is contrary to the spirit, letter and aims of the United Nations and, as such, a direct violation of the Charter of the United Nations;
(b) The use of nuclear and thermo-nuclear weapons would exceed even the scope of war and cause indiscriminate suffering and destruction to mankind and civilization and, as such, is contrary to the rules of international law and to the laws of humanity;
(c) The use of nuclear and thermo-nuclear weapons is a war directed not against an enemy or enemies alone but also against mankind in general, since the peoples of the world not involved in such a war will be subjected to all the evils generated by the use of such weapons;
(d) Any State using nuclear or thermo-nuclear weapons is to be considered as violating the Charter of the United Nations, as acting contrary to the laws of humanity and as committing a crime against mankind and civilization."
After WW2, the civilized nations of the world passed laws to make bombing civilians illegal. There's your answer. Strategic blockade, with humanitarian shipments of food and medicine for the civilians would be the legal course of action under current international law. UN Resolution 2444 states:
"(a) That the right of the parties to a conflict to adopt means of injuring the enemy is not unlimited;
(b) That it is prohibited to launch attacks against the civilian populations as such."