无法运行,该怎么解决,
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct person
{
char name[20];
int count;
}
leader[3] = { "Jordan",0,"Kobe",0,"James",0 };
int main()
{
int i, j;
char leader_name[20];
for (i = 1; i <= 10; i++)
{
scanf("%s", leader_name);
for (j = 0; j < 3; j++)
if (stremp(leader_name, leader[j].name) == 0)
leader[j].count++;
}
for (i = 0; i < 3; i++)
printf("%5s:%d\n", leader[i].name, leader[i].count);
system ("pause");
}
比较函数是 strcmp, 不是 stremp
stremp
->
strcmp
核心思想: 让每一对相邻的邻居比较 ,发现前面的比后面的大的就交换两个的位置 。 关键是每一对相邻的元素作比较 ,比较完每一轮之后,后面的都是有序的
细节:
#include <stdio.h>//冒泡排序法
int main()
{
int a[10] = { 10,9, 8, 7, 6, 5, 4, 3, 2, 1 };
int i, j, t;
for (i = 0; i < 10; i++)
{
for (j = 0; j < 10 - i - 1; j++) //j+1 保证不越界
{
if (a[j] > a[j + 1])
{
t = a[j];
a[j ] = a[j+1];
a[j + 1] = t;
}
}
}
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
}