//字典順序是按ASCII碼值排序的,若想把數字轉換為ASCII碼,只須+上"0"就可以了,你可以查一下ASCII碼字符集(c++教程的附錄通常都有這表),就可以很清楚地知道大寫字母、小寫字母、數字之間轉換關係!#include
#include
using namespace std;int main()
{
char* str[5]; //注:字典順序是按ASCII碼排序的,小寫的ASCII碼值大於所有大寫的ASCII碼!
cout
int i,j,t;
for(i=0;i
str[i]=new char[20];
cin>>str[i];
}
t=i;
for(j=i+1;j
if(strcmp(str[t],str[j])>0)
t=j;
if(t!=i)
char temp[20];
strcpy(temp,str[t]);
strcpy(str[t],str[i]);
strcpy(str[i],temp); //交換
} for(i=0;i
return 0;
}輸出結果如下:(1)首字母為大寫,排序如下:(2)首字母為小寫的,排序如下:(3)首字母不統一的情況,則排序情況有點不一樣,不要光看表面的字母,c++的小寫字母ASCII碼比大寫字母的大!,排序如下:
//字典順序是按ASCII碼值排序的,若想把數字轉換為ASCII碼,只須+上"0"就可以了,你可以查一下ASCII碼字符集(c++教程的附錄通常都有這表),就可以很清楚地知道大寫字母、小寫字母、數字之間轉換關係!#include
#include
using namespace std;int main()
{
char* str[5]; //注:字典順序是按ASCII碼排序的,小寫的ASCII碼值大於所有大寫的ASCII碼!
cout
int i,j,t;
for(i=0;i
{
str[i]=new char[20];
cin>>str[i];
}
for(i=0;i
{
t=i;
for(j=i+1;j
{
if(strcmp(str[t],str[j])>0)
{
t=j;
}
}
if(t!=i)
{
char temp[20];
strcpy(temp,str[t]);
strcpy(str[t],str[i]);
strcpy(str[i],temp); //交換
}
} for(i=0;i
{
cout
}
cout
return 0;
}輸出結果如下:(1)首字母為大寫,排序如下:(2)首字母為小寫的,排序如下:(3)首字母不統一的情況,則排序情況有點不一樣,不要光看表面的字母,c++的小寫字母ASCII碼比大寫字母的大!,排序如下: