1、新建一个工程和.c文件。
2、定义变量类型。
3、用一个for语句遍历整个数组。
4、引入一个子函数,该子函数的作用是调整数组元素的顺序,使之由小到大排列。
5、最后通过for函数一次输出调整后的数组元素。
6、介绍一下子函数的实现语句,首先定义子函数。
7、定义变量类型。
8、该子函数实现顺序的调整。
9、编译,执行即可。
#include
voidmain()
{
charc;intx;inta[100];
inti=0,j,num,temp;
clrscr();
printf("pleasesomeintegers:\n");
scanf("%d",&x);
c=getchar();
while(c!='#')
{a[i]=x;
scanf("%d",&x);
c=getchar();
i++;
num=i-1;
}
if(num==0)
{
printf("\nYoushouldgiveatleasttwointegers!");
exit(0);
}
printf("Theintegersyouinput:\n");
for(i=0;i<=num;i++)
{printf("%-5d",a[i]);
if(i%5==4)printf("\n");}
printf("\nmaopaopaixu\n");
for(i=0;i<=num;i++)
for(j=0;j<=num-1;j++)
if(a[j]>a[j+1])
{
temp=a[j+1];
a[j+1]=a[j];
a[j]=temp;
}
for(i=0;i<=num;i++)
{printf("%-5d",a[i]);
if(i%5==4)printf("\n");}
printf("\nxuanzepaixu\n");
for(i=0;i<=num;i++)
for(j=i+1;j<=num;j++)
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
for(i=0;i<=num;i++)
{printf("%-5d",a[i]);
if(i%5==4)printf("\n");}
getch();
}
扩展资料
用“起泡法”,对输入的10个字符由小到大排序。
#include
#include
intmain(void){
voidsort(chara[10]);//声明函数
chara[10];
inti;
printf("输入10个字符,中间不要有空格:\n");
for(i=0;i<10;i++){
scanf("%c",&a[i]);
}
sort(a);//调用函数
return0;
}
voidsort(chara[10]){
intj;//外循环,控制趟数
inti;//内循环,控制次数
chart;
for(j=0;j<9;j++){
for(i=0;i<9-j;i++){
if(a[i]>a[i+1]){
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
for(i=0;i<10;i++){
printf("%c",a[i]);
}
}
C语言程序:
#include
/* 冒泡排序,非递减有序 */
void sort(int arr[], int n)
{
int i, j;
int temp;
for(i=0; i{
for(j=0; jif(arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
void main()
{
int arr[10];
int i, n = 10;
printf("请输入10个整数:");
for(i=0; iscanf("%d", &arr[i]);
sort(arr, n);
printf("排序后:\n");
for(i=0; iprintf("%d ", arr[i]);
printf("\n");
}
运行测试:
请输入10个整数:4 5 6 7 1 2 3 0 9 8
排序后:
0 1 2 3 4 5 6 7 8 9