重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
创新互联是专业的鸡东网站建设公司,鸡东接单;提供成都网站制作、成都网站设计、外贸营销网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行鸡东网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
//选择排序算法,升序
void sort(int *arr,int n)
{
int i,j,k;
int tmp;
for(i=0;in-1;i++)
{
k=i; //开始一趟选择排序,假定第i个元素是后面n-i+1个未排序的元素中最小的元素
for(j=i+1;jn;j++)
{
if(arr[k] arr[j]) //如果发现比当前最小元素还小的元素,则更新记录最小元素的下标k
k=j;
}
//如果最小元素的下标不是后面n-i+1的未排序序列的第一个元素,则需要交换第i个元素和后面找到的最小元素的位置
if(k != i)
{
tmp=arr[k];
arr[k]=arr[i];
arr[i]=tmp;
}
}
}
int main()
{
int a[10]={ -5,-9,-8,3,9,2,-28,101,-395,0};
int i;
sort(a,10);
for(i=0;i10;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
//运行结果
F:\c_worka.exe
-395 -28 -9 -8 -5 0 2 3 9 101
1 根据功能,想一个函数名,并设计好返回值类型以及参数列表。参数列表包括参数个数,每个参数类型,以及该参数的作用。
2 根据函数要实现的功能,实现函数的主体代码。
3 按照你设计的想法,传入不同参数类型,验证函数功能并调试。
这样:
#define pi 3.1415926
#include stdio.h
int main()
{
float r,area,perimeter;
printf("请你输入圆的半径r:\n");
scanf("%f",r);
area=pi*r*r;
perimeter=pi*r*2;
printf("直径为:%0.02f\n圆的面积为:%0.03f\n周长为:%0.02f",2*r,area,perimeter);
return 0;
}
扩展资料:
注意事项
1、常量是指在运行过程中,其值不改变的量。
2、#define我们称为宏定义,在编译前替换,也称为预编译。
3、宏定义,规范上用大写字母表示。
4、float为单精度浮点型,占用4字节,其表示范围为10^-37到10^38。
5、需要更长的数据表达范围和精度,还可使用双精度浮点型double,占用8字节,其表示范围为10^-307到10^308
可以的
1. 做成库的优点:
a) 能够被多个程序共用,减少计算机空间
b)能够隐藏sum.c的代码,让别人编写main.c
缺点:
a) 需要链接编译,有时候不容易解决链接发生的问题
b) sum函数的接口方式公开,容易被非法程序调用
2. include sum.c
这种做法相当于写一个单独的my.c把所有sum.c和main.c的程序写在一起
优点:
a) 没什么优点吧?要说就一个,少写头文件, 没有更新后编译顺序的依赖问题
缺点:
a) 管理麻烦,万一被多个程序 include sum.c发生编译通不过
b) 非主流用法,不易于理解。
3. include .h 放在一起编译
优点和缺点正好和第一个相反。
而且优点:
a) 主流用法,思路清晰,便于理解
缺点:
a) 文件多了,发生重复引用问题要解决
b) 文件多了.h,更新编译的依赖性要通过make文件主动解决
自定义函数是由用户按需要写的函数。这与库函数相对应的,库函数是由c系统提供的函数,已经定义好了如printf
、
scanf
、
getchar
、putchar、gets、puts、strcat等函数均属此类。
说白了,自定义函数是是自己写的,想实现什么功能就写什么,然后在用的时候和库函数(系统定义的)的一样调用就是了,相当于自己增加了一个自己的库函数。