2.當I位置是大寫字母時,遍歷第二層。
3.如果判斷不是大寫字母,j++之後不需要繼續,否則會跳過壹個字母。
修改後的代碼如下,並給出了修改後的位置註釋:
//1072字母排列
# include & ltstdio.h & gt
# include & ltstring.h & gt
int?主()
{
夏爾。a【65】;
int?I、j、b、min
獲取(a);//讀壹行。
b = strlen(a);
//冒泡排序法,其中I是第壹個字符,J是最後壹個字符。
for(I = 0;我& ltB- 1;i++)
{
if(a【I】& lt;a‘| |(a【I】》;z‘)| | a【I】= =‘?‘)繼續;/////法官
for(j = I+1;j & ltb;j++)
{
if(a【j】& lt;a‘| |(a【j】》;z‘)| | a【j】= =‘?‘)
{
//j++;//刪除
繼續;
}
if(a【I】》;a【j】)//從小到大排序,小的在左邊,大的在右邊。
{
min = a【j】;
a【j】= a【I】;
a【I】= min;
}
}
}
for(I = 0;我& ltb;i++)
printf(“% c“,a【I】);
回歸?0;
}