二维数组 及函数 2024.01.30

整型二维数组

1.图像的镜像

2.输出三阶魔方阵

字符型二维数组

初始化: 

char s[3][100] = {"Hello","World","Chian!"};

打印二维数组

比较大小

逆序

字符串的排序

选择排序

int main(void)
{
	char s[][100] = {"Hello", "World!", "China!", "America"};
	int rows = sizeof(s) / sizeof(s[0]);
	int i, j;

	for(i = 0;i < rows - 1;++i)
	{
		for(j = i + 1;j < rows;++j)
		{
			if(strcmp(s[i], s[j]) > 0)
			{
				char t[100];
				strcpy(t, s[i]);
				strcpy(s[i], s[j]);
				strcpy(s[j], t);
			}
		}
	}
	for(i = 0;i < rows;++i)
	{
		puts(s[i]);
    }
}
	

冒泡排序

查找

int main(void)
{
	char s[][100] = {"Hello", "World!", "China!", "America"};
	int rows = sizeof(s) / sizeof(s[0]);
	int i, j;

	for(i = 0;i < rows - 1;++i)
	{
		for(j = i + 1;j < rows;++j)
		{
			if(strcmp(s[i], s[j]) > 0)
			{
				char t[100];
				strcpy(t, s[i]);
				strcpy(s[i], s[j]);
				strcpy(s[j], t);
			}
		}
	}

	char n[100] = "China!";
	int begin = 0;
	int end = rows - 1;
	int mid;

	while(begin <= end)
	{
		mid = (begin + end) / 2;
		if(strcmp(s[mid] ,n) > 0)
		{
			end = mid - 1;
		}
		else if(strcmp(s[mid], n) < 0)
		{
			begin = mid + 1;
		}
		else
		{
			break;
		}
	}

	puts(begin <= end ? "found" : "not found");

	return 0;
}

函数

一个C程序由一个主函数和若干个其他函数构成。

使用函数的作用:

1.提高代码的复用性

2.降低程序的耦合性

难点:编程思想、递归的调用

函数:

1.一个C程序由一个或者多个程序模块组成,每个程序模块作为一个源程序文件。

2.一个程序文件由一个或多个函数以及其他有关内容组成。

3.C程序的执行是从main函数开始的,在mian函数中调用其他函数,在调用后流程返回到main函数,在main函数中结束整个程序的运行。

4.所有的函数都是平行的,在定义函数时分别进行,是相互独立的,函数不能嵌套定义。函数之间可以相互调用,但是不能调用main函数。main函数是系统调用的。

5.从用户使用的角度看,函数有两种:

标准函数、用户自己定义的函数

函数定义的一般形式:

函数名:可以写个动词;

形式参数表列:这个函数在使用是提供的线索或额外的条件;

举例:两个整型数的和

函数的调用

打印结果:

形参与实参,个数相等,类型匹配即可;

如果没有 return ,返回值为随机数;

调用完函数之后,回继续执行下一步操作

int add(int a,int b)
{
    int ret;
    ret = a + b;
    if(a > b)
    {
        return ret;
    }
    return 88;
}

int main(void)
{
    int a = 10,b = 20;
    int sum;
    sum = add(a,b);
    printf("%d"\n,sum); 
}

比较三个数的最大值

被调函数在前,主调函数在后。

函数的嵌套调用

哪年哪月有多少天

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值