程序代碼:
#include <stdio.h>
#define N 6
struct data
{
char name;
int value;
} arr[] = {{'A', 0}, {'B', 0}, {'C', 0}, {'D', 0}, {'E', 0}, {'F', 0}}, t;
void main()
{
int i, j;
/*錄入數據*/
for (i = 0; i < N; i++)
{
printf("Enter data for %c\n", arr[i].name);
scanf("%d", &arr[i].value);
}
/*冒泡排序*/
for (i = 0; i < N - 1; i++)
{
for (j = 0; j < N - 1 - i; j++)
{
if (arr[j].value < arr[j + 1].value)
{
t = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = t;
}
}
}
/*輸出數據*/
for (i = 0; i < N; i++)
{
printf("%c(%d)", arr[i].name, arr[i].value);
}
}
運行效果: