c语言比较三个数大小并排序(比较三个数大小的c语言程序代码)

  

  今天让我们学习用C语言编写比较两个数大小的程序

例:

求两个整数中的较大者。

解题思路:用一个函数来实现求两个整数中的较大者。在主函数中调用此函数并输出结果。
c语言比较三个数大小并排序(比较三个数大小的c语言程序代码)

#include<stdio.h>  //主函数

int main()  //定义主函数

{   //主函数体开始

int max(int x,int y);   //对被调用函数max的声明

int a,b,c;   //定义变量a,b,c

scanf("%d,%d,&a,b");   //输入变量a和b的值

c=max(a,b);   //调用max函数,将得到的值赋给c

printf("max=%d\n",c);   //输出c的值

return 0;   //返回函数值为0

}   //主题函数结束

//求两个整数中的较大者的max函数

int max(int x,int y)   //定义max函数,函数值为整型,形式参数x和y为整型

{

int z;   //max函数中的声明部分,定义本函数中用到的变量z为整型

if(x>y)z=x;   //若x>y成立,将x的值赋给变量z

else z=y;   //否则(即x>y不成立),将y的值赋给变量z

return(z);   //将z的值作为max函数值,返回到调用max函数的位置

}

运行结果:

6,8

max=8

第一行输入6和8,赋给a和b,第二行输出“大的那个数8”。

  程序分析:本程序包括了两个函数:1.主函数main;2.被调用函数max。

  max函数的作用是将x和y中较大者的值赋给变量z。return语句将z的值作为max的函数值,返回给调用max函数的函数(即主函数main)。

  程序int max(int x,int y);是对调用函数max的声明(declaration)。为什么要做这个声明呢?因为在主函数中要调用max函数,而max函数的定义却在main函数之后,对对程序的编译是自上而下进行的,在对程序c=max(a,b);进行编译时,编译系统无法知道max是什么,因而无法把它作为函数调用处理。为了使编译系统能够识别max函数,就要在调用max函数之前用"int max(int x,int y);"对max函数进行“声明”,所谓声明,通俗地说就是告诉编译系统max是什么,以及和它有关的信息。

  在执行printf函数时,对双撇号括起来的max=%d\n是这样处理的:将max=原样输出,%d由变量c的值取而代之,\n执行换行。

  本例用到了函数调用、实际参数和形式参数等概念,只作了简单的解释。读者如对此可能不太理解,可以先不予深究,等读者在C语言方面的知识量越来越多,回头来看前面几个例子自然迎刃而解。

C语言程序的结构

1.一个或多个源程序文件组成。

(1)预处理指令。如:#include<stdio.h>。

(2)全局声明。即在函数之外进行的数据的声明。如:int a,b,sum;放在函数main函数就是全局声明,在函数外面的变量称为全局变量。

(3)函数定义。

2.函数是C语言的主要组成部分。程序几乎全部的工作都是由各个函数分别完成的,函数是C程序的基本单位,在设计良好的程序中,每个函数都用来实现一个或几个特定的功能。编写C语言程序的主要工作就是编写一个个函数。

3.一个函数包括两个部分。

(1)函数的首部。即函数的第一行,包括函数名、函数类型、函数属性、函数参数名、参数类型。

例:int max (int x,int y)

int:函数类型 max:函数名 int:函数类型 x:函数参数 y:函数参数

一个函数后面必须跟一个圆括号。

(2)函数体。即函数首部下面的花括号内的部分。如果在一个函数中包括有很多层花括号,则做外层的一对花括号是函数体的范围。

4.程序总是从main函数开始执行的。而不论main函数在整个程序中的位置如何。

5.程序中对计算机的操作是由函数中的C语言完成的。如赋值、输入输出数据的操作都是由相应的C语句实现的。

6.在每个数据声明和语句的最后必须有一个分号。

7.C语言本身不提供输入输出语句。输入输出语句是由库函数scanf和printf等函数完成的。

8.程序应当包含注释。一个好的、有价值的源程序都应当加上必要的注释,以增加程序的可读性。

智库PC

发表评论

登录后才能评论