1、通过if来比较各类型的值是否为零值。
float flag; (精度)
float flag; (精度)
#include<stdio.h>
#include<stdbool.h>
void main()
{
float flag=0.00001;
if((flag<0.000001)&&(flag>-0.000001))
{
printf("float flag=0 \n ");
}else
{
printf("float flag!=0 \n");
}
int* c;
if(c==NULL)
{
printf("int* c=0\n");
}else
{
printf("int* c!=0\n");
}
bool i=true;
if(true)
{
printf("非0");
}else
{
printf("0");
}
}
冒泡排序:
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名“冒泡排序”。
冒泡排序算法的原理如下:
-
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
-
对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
-
针对所有的元素重复以上的步骤,除了最后一个。
-
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
#include<stdio.h>
void main()
{
int buf[10]={15,10,2,-9,3,8,14,6,5,7};
int i=0,j=0,x;
int temp;
for(i=0;i<10;i++) //
{
//两两进行比较 0-1 1-2 2-3 3-4 8-9
for(j=0;j<10-i-1;j++) //第i时刻,两两相邻的元素进行比较
{
if(buf[j]<buf[j+1])//如果大的在前,小的在后 {
//互换位置
temp=buf[j];
buf[j]=buf[j+1];
buf[j+1]=temp;
}
}
}
//打印 for(i=0;i<10;i++)
{
printf("%d ",buf[i]);
}
printf("\n");
}