C语言编程入门——数组(下)

这里讲了对数组元素的操作及二维数组与多维数组,注意,多维数组在内存中也是线性排列存放的。

将数组中的元素倒序排列:

# include <stdio.h>

int main(void)
{
	int a[7] = {1, 2, 3, 4, 5, 6, 7};  //升序对数组赋值
	int i, j, t;

	i = 0;
	j = 6;
	while (i < j)  //倒序排列
	{
		t = a[i];
		a[i] = a[j];
		a[j] = t;

		++i;
		--j;
	}

	/*
	for (i=0, j=6; i<j; ++i, --j) //这样写也可以,分号为三段分隔,逗号为内部分隔。但这样写有些麻烦,可以使用上面的while写法。
	{
		t = a[i];
		a[i] = a[j];
		a[j] = t;
	}
	*/

	for (i=0; i<7; ++i)
		printf("a[%d] = %d\n", i, a[i]);

	return 0;
}

二维数组的赋值与输出:

# include <stdio.h>

int main(void)
{
	int a[3][4] = {
		{1, 2,  3,  4},
		{5, 6,  7,  8},
		{9, 10, 11, 12}
	};                //推荐这样写,比较整齐。

	//输出多维数组内容,需要多重循环嵌套使用。

	int i, j;

	for (i=0; i<3; i++)
	{
		for (j=0; j<4; j++)
			printf("%-4d", a[i][j]); //对输出格式的控制:%-4d中,负号表示左对齐,4表示每个元素占4个字节。
		printf("\n");  //输出换行符
	}

	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-07 07:43:40

C语言编程入门——数组(下)的相关文章

C语言编程入门——数组(上)

数组是最重要的数据结构之一,所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量. 数组的赋值与输出: # include <stdio.h> int main(void) { int a[5] = {1, 2, 3, 4, 5}; //数组名a后跟中括号[],赋值用大括号{},并以逗号隔开.5表示数组a中有5个元素

《Go语言编程入门》视频课程开课了

作为拥有多年工作经验的运维老鸟,我没有选择运维常用的Python作为我今后的主要使用语言.Python编写运维程序的开发效率虽然很高,但随着代码量的增大,以及Python的缩进式语法结构,可读性和维护性并不很高.加之Python本身的设计,并不原生支持多线程多核,我考虑到当程序代码达到一定规模时,必然会考虑它的执行效率和维护成本.最终放弃了Python,选择语言的过程中被Google新出的Go语言吸引了.Go本身脱胎于C,语法和C比较像,我本身就一直学习和编写C和PHP程序,习惯了大括号的语法结

linux 操作系统下c语言编程入门

2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理 7)Linux程序设计入门--线程操作 8)Linux程序设计入门--网络编程 9)Linux下C开发工具介绍 1)Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编

C语言编程入门——动态内存分配

内存管理,是指软件运行时对计算机内存资源的分配和使用的技术.其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源.内存管理是C语言编程中重要的组成部分,C语言中的内存需要手动分配,手动释放,一般遵循分配多少,释放多少,以免造成内存泄漏.内存管理是一项重要且复杂的事情,理解内存管理,对后面课程及项目的学习会有很大的作用. 之前创建变量,是系统自动分配的内存,放在栈内存中,销毁后被系统自动回收,手动分配的内存,放在堆内存中,需要手动释放.千万不要忘记销毁对象手动将内存释放并将指针

Scala编程入门---数组操作之数组转换

使用yield和函数式编程转换数组 //对Array进行转换,获取的还是Aarry val a = Array(1,2,3,4,5) val a2 = for(ele <- a) yield ele * ele //对ArrayBuffer进行转换,获取的还是ArrayBuffer val b = ArrayBuffer[Int]() b+=(1,2,3,4,5) val b2=for(ele <- b) yield ele*ele //结合if守卫, 仅转换需要元素 val a3= for(

C语言编程入门——指针与函数、数组

总结一下指针与函数和数组的关系及相关练习. 传统数组的缺点: # include <stdio.h> int main(void) { //数组的定义 int len = 5; int a[len]; //错误,数组的长度必须直接指定,且不能更改. int b[5]; //正确. return 0; } 确定一个数组需要几个参数: # include <stdio.h> //本函数功能是输出任意一维数组. void string(int * p, int l) //函数对数组进行处

C语言编程入门——程序练习(下)

C语言的一些简单操作练习. 互换两个数字: # include <stdio.h> int main(void) { int i = 3; int j = 5; int t;   //将i与j的值交换 t = i; i = j; j = t; printf("i = %d, j = %d\n", i, j); return 0; } 输出任意字符任意层的金字塔: # include<stdio.h> main() { int a,i,j; char c; pri

C语言编程入门——函数(下)

void的含义: # include <stdio.h> int f(void) //void表示不接收任何数据,int表示返回int类型值,即下面的 return 10; { return 10; //向主调函数返回10,即向main函数中调用的语句返回10这个值. } void g(void) //函数名前的void表示该函数没有返回值. { //return 10; //错误,与上面的void相矛盾,不能有返回值. } int main(void) { int i = 88; int j

C语言编程入门——指针(下)

函数的重载: # include <stdio.h> void swap(void) { printf("呵呵!\n"); return; } void swap(int i, int j) { printf("哈哈!\n"); return; } int main(void) { swap(); swap(1, 2); //函数名相同,形参个数不同,也不是同一个函数. int i = 3; printf("i = %d\n", i)