给你一个直接插入排序
成都创新互联是一家专业的成都网站建设公司,我们专注成都网站制作、成都做网站、外贸营销网站建设、网络营销、企业网站建设,友情链接,广告投放为企业客户提供一站式建站解决方案,能带给客户新的互联网理念。从网站结构的规划UI设计到用户体验提高,创新互联力求做到尽善尽美。
#include "stdio.h"
void InsertSort(int a[], int left, int right) {//对数组a从下标为left到right区域进行直接插入排序
int i, j, tmp;
for(i = left + 1; i = right; i++) {
for(j = i - 1, tmp = a[i]; j = left tmp a[j]; j++)
a[j + 1] = a[j];
a[j + 1] = tmp;
}
}
void main( ) {
int i, n, a[100];
scanf("%d", n);
for(i = 0; i n; i++)
scanf("%d", a[i]);
InsertSort(a, 0, n - 1);
printf("\n");
for(i = 0; i n; i++) printf("%d\t", a[i]);
c语言运算符优先级从高到低的顺序依次如下:
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。
不同类型的运算符之间也有相应的优先级顺序。
一个表达式中既可以包括相同类型的运算符,也可以包括不同类型的运算符或者函数。当多种运算符出现在同一个表达式中时,应该先按照不同类型运算符间的优先级进行运算。
各种运算符间的优先级如下:数值运算符、字符串运算符、关系运算符、逻辑运算符。可以用括号改变优先级顺序,使得括号内的运算优先于括号外的运算。对于多重括号,总是由内到外强制表达式的某些部分优先运行。括号内的运算总是最优先计算。
#includestdio.h
void main()
{
int nScore[10]={0};
int i,j,nTemp;
for(i=0;i10;i++)
{
scanf("%d",nScore[i]);
}
/*冒泡法排序*/
for(i=0;i10;i++)
{
for(j=0;j10-i-1;j++)
{
if(nScore[j]nScore[j+1]) /*两两比较,小的放后放,一次循环后最小数在最后*/
{
nTemp=nScore[j];
nScore[j]=nScore[j+1];
nScore[j+1]=nTemp;
}
}
}
printf("由大到小排列为:\n")
for(i=0;i10;i++)
{
printf("%d ",nScore[i]);
}
printf("\n");
}
#include stdio.h
void bubble_sort(int a[], int n)
{int i, j, temp;
for (j = 0; j n - 1; j++)
for (i = 0; i n - 1 - j; i++)
if(a[i] a[i + 1])
{temp=a[i]; a[i]=a[i+1]; a[i+1]=temp;}
}
int main()
{int number[10] = {95, 45, 15, 78, 84, 51, 24, 12, 38, 97};
int i,SIZE=10;
bubble_sort(number, SIZE);
for (i = 0; i SIZE; i++)
printf("%d", number[i]);
printf("\n");
return 0;
}
你好,我们这里需要用到数组镶套使用for函数以及冒泡算法,具体的代码如下。
#include iostream
using namespace std;
int main()
{
int s [10], i, j, t;
cout "输入10个数:";
for (i = 0; i 10; i++)
{
cout "请输入第" i+1 "名学生的成绩;" endl;
cin s[i];
}
for (i = 0; i10; i++)
{
for (j = 0; j9 - i; j++)
if (s[j]s[j + 1])
{
t = s[j + 1];
s[j + 1] = s[j];
s[j] = t;
}
}
cout "成绩由高到低为;";
for (i = 0; i10; i++)
cout s[i]"\t" ;
}
以下为效果图