今天学习了新的知识点——冒泡排序。
冒泡排序广泛应用于对数组中的数据进行最值排序,按照从大到小或从小到大的顺序。在冒泡排序中,涉及for循环,需要遍历数组中的每个数据,涉及需提前定义变量以便存储数据进行数据交换。
在今日做习题过程中,发现for循环应用并不是十分熟练,需进一步练习。
//练习1
/*
#include<stdio.h>
int main()
{
int a[8]={6,3,2,4,5,7,8,9};
int b=a[0],i;
for(i=0;i<7;i++)
{
a[i]=a[i+1];
printf("%d ",a[i]);
}
printf("%d",b);
}
*/
//练习2
/*
#include<stdio.h>
int main()
{
int a[3]={};
int i,b;
for(i=0;i<3;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<3;i++)
{
if(a[i]==35)
{
b=a[i];
}
}
if(b==35)
{
printf("序列中有35\n");
}
else
{
printf("序列中没有35\n");
}
}
*/
//练习3
/*
#include<stdio.h>
int main()
{
int nun[10]={1,2,3,4,5,6,7,8,9,10};
int i,m=0;
for(i=0;i<10;i++)
{
if(nun[i]%2!=0)
{
m++;
}
}
printf("数组中奇数有%d个\n",m);
}
*/
//练习4
/*
#include<stdio.h>
int main()
{
int a[8]={54,37,62,13,89,73,65,42};
int i,j,b;
printf("排序后的序列为:");
for(j=1;j<8;j++)
{
for(i=0;i<7;i++)
{
if(a[i]>a[i+1])
{
b=a[i];
a[i]=a[i+1];
a[i+1]=b;
}
}
}
for(i=0;i<8;i++)
{
printf("%d ",a[i]);
}
}
*/
//练习5
/*
#include<stdio.h>
int main()
{
int a[5]={1,1};
int i;
printf("%d %d ",a[0],a[1]);
for(i=2;i<5;i++)
{
a[i]=a[i-1]+a[i-2];
printf("%d ",a[i]);
}
}
*/
//练习6
/*
#include<stdio.h>
int main()
{
int a,i,m=0,n,n1,j;
printf("请输入一个大于4的偶数:");
scanf("%d",&n);
for(a=1;a<=n;a++)
{
m=0;
for(i=1;i<=a;i++)
{
if(a%i==0)
{
m++;
}
}
if(m==2)
{
n1=n-a;
m=0;
for(j=1;j<=n1;j++)
{
if(n1%j==0)
{
m++;
}
}
}
if(m==2)
{
printf("%d=%d+%d ",n,a,n1);
}
}
}
*/