C语言学习之路--第四站 函数的定义与应用

127 阅读2分钟

每一个C语言程序都需要一个主函数 Main(),也叫入口函数。一个程序有且只有一个入口函数并且只能是Main函数。

函数可以理解为一个代码块,只需要一个指令便可以运行一块代码。就类似于你调动一班的学生只需要喊一班同学,而不需要一个一个的叫名字。

必不可少的就是函数的构成。与其他语言相似,都需要函数名称,返回类型,参数,函数主体等。

我们可以将前三部分的东西转换为一个个的方法,然后实现出来。现在将之前的代码进行改造。

代码内容是前文的总和,是目前打的所有代码,将代码粘贴如下:

/* #include 包括    
stdio -> standard(标准) + io = stdio  
.h 是head 头文件
*/
#include<stdio.h>
//宏定义 定义常量
#define PI 3.13
#define Sun 44.22
int main(void)
{
        // print 打印 printf 格式化输出 
        printf("HelloWorld!\n");

//实验各数据类型
int number = 60;
float money = 8.8;
double one = 18.8;
printf("number = %d\n", number);
printf("money = %f\n", money);
printf("one = %f\n", one);
//常量 全大写 
const int IPHOME = 9999;

//标识符由大小写字母,下划线开头. 区分大小写 例如 One 和 one 是两个东西.

printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");


printf("转义\n字\\符测\'试\r 转义字符\t测试测试%d\n", IPHOME);
int two = 2;
number = number + two;
printf("number = %d\n", number);
number = number - two;
printf("number = %d\n", number);
number = number % two;
printf("number = %d\n", number);
printf("number = %d\n", number + two);
number = number++;
printf("number = %d\n", number++);


printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");

printf("下面运行运算符测试方法:\n");
int a = operator_demo();

printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");

printf("下面运行杂项运算符测试方法:\n");
other_operator_demo(a);


printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");

printf("下面运行判断测试方法:\n");
if_switch_demo();

printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");


printf("下面运行循环测试方法:\n");
while_for_demo();

printf("-=-=-=-=-=-=-=-=-=-==-=-=-=-=\n");



return 0;
}


int while_for_demo()
{

//循环简单测试

int i = 10;

while (i <= 13)
{
	printf("i=%d\n", i);
	i++;
}

printf("-=-=-=\n");

for (; i <= 16; i++)
{
	printf("i=%d\n", i);
}

printf("-=-=-=\n");

do
{
	printf("i=%d\n", i);
	i++;
} while (i <= 19);

return 0;

}

int if_switch_demo()
{
int h = 7;

if (h < 5)
{
	printf("判断1\n");
}
else
{
	printf("判断2\n");
}

if (h > 5)
{
	if (h < 8)
	{
		printf("判断3\n");
	}
	else
	{
		printf("判断4\n");
	}
}
else
{
	printf("判断5\n");
}

switch (h)
{
case 3:
	printf("h=3\n");
	break;
case 4:
	printf("h=4\n");
	break;
case 5:
	printf("h=5\n");
	break;
case 7:
	printf("h=7\n");
	break;
default:
	printf("不到\n");
}

switch (h)
{

case 7:
	printf("h=7\n");
default:
	printf("不到\n");
}

int h1 = 4;
switch (h) {
case 6:
	switch (h1) {
	case 3:
		printf("h=6,h1=3\n");
	case 4:
		printf("h=6,h1=4\n");
	}
case 7:
	switch (h1) {
	case 3:
		printf("h=7,h1=3\n");
	case 4:
		printf("h=7,h1=4\n");
	}
default:
	printf("不到\n");
}


}

int operator_demo()
{

int c = 8;  // 0000 1000
int d = 13; // 0000 1101
printf("&运算符测试%d\n", d & c); // 0000 1000
printf("|运算符测试%d\n", d | c); // 0000 1101
printf("^运算符测试%d\n", d ^ c); // 0000 0101 
printf("~运算符测试%d\n", ~c);    /* 11111 0111
									000000 1001 */
printf("~运算符测试%d\n", ~d);    /* 11111 0010
								   00000 1110 */

printf("-=-=-=-=-=-=\n");



//位运算符简单测试

int a = 10;
int b = 10;

printf("\n");
printf("A=%d\n", a >> 1);//除以n次2,此时n=1


printf("B=%d\n", b << 1);//乘n次2,此时n=1
printf("B=%d\n", b << 2);//乘n次2,此时n=2

return a;
}

int other_operator_demo(int a)
{
        //杂项运算符简单测试

int e = 4;
short f;
double g;
int* ptr;


printf("变量的e大小:%d\n", sizeof(e));
printf("变量的f大小:%d\n", sizeof(f));
printf("变量的g大小:%d\n", sizeof(g));

ptr = &a;
printf("a的值为:%d\n", a);
printf("ptr的值为:%d\n", ptr);
printf("ptr的值为:%d\n", *ptr);
printf("ptr指向a的地址\n");

int demo = (e == 1) ? 10 : 11;
int demo1 = (e == 4) ? 10 : 11;
printf("demo:%d\n", demo);
printf("demo1:%d\n", demo1);
}

image.png

基础的应用大概就这样,其他的内容在以后再加深学习。