Entries

[程式]A-52 字串排序

[A-52] 字串排序

請撰寫一程式,輸入 N 位學生的姓名後依照以下兩種規則排序
1.依照姓名長度由小到大排序。
2.依照姓名ASCII碼由小到大排序。

------------------------------------------------------------------------------------------------
程式碼:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(void)
{

char s[100][100],temp[100];
char maxlen[100];
int n;
int i,j,k,a,b;

printf("請輸入學生數量:");
scanf("%d",&n);

for (i = 0 ; i < n ; i++)
{
printf("請輸入學生 %d 姓名:",i+1);
scanf("%s",&s[i]);
}
for (j = 0 ; j < n ; j++)
{ for (k = j + 1 ; k < n ; k++)
{
a = strlen(s[j]);
b = strlen(s[k]);
//排序
if (b < a)
{
strcpy(maxlen, s[j]);
strcpy(s[j], s[k]);
strcpy(s[k], maxlen);
}
}
}
for (i = 0 ; i < n ; i++)
{
printf("學生姓名:%s\n",s[i]);
}



for (j = 0 ; j < n ; j++)
{ for (k = j + 1 ; k < n ; k++)
{
//排序
if (strcmp(s[j],s[k]) > 0)
{
strcpy(temp, s[j]);
strcpy(s[j], s[k]);
strcpy(s[k], temp);
}
}
}
for (i = 0 ; i < n ; i++)
{
printf("學生姓名:%s\n",s[i]);
}

system("pause");
return 0;
}



執行圖:
[A-52]

------------------------------------------------------------------------------------------------------------------------

陣列排序字串應用

留言

發表留言

發表留言
只對管理員顯示

引用

引用 URL
http://tom4318679.blog124.fc2.com/tb.php/41-fbef2ba4
引用此文章(FC2部落格用戶)

Appendix

魔の紹介

魔王

Author:魔王

台湾人。
遊戯王のカードとアニソンが大好き。
本網站建議使用1024*768解析度
FireFox瀏覽,以免有文字錯位現象

魔の囁き

魔と話し

魔のplunk

魔の検索