【1】数组
多个数据类型相同元素的集合;

【2】访问元素
从下标0开始,到N-1结束

【3】定义数组

<存储类型> <数据类型 > <数组名>[<表达式>] ;

1--- #define N 10
int a[N];

2--- int b[5];

3--- int i = 3;
int c[i]; //一定不能初始化

4--- int d[] = {1,2,3,4}; //<===> int d[4];必须进行初始化

【4】初始化
1--- 全部初始化 //不能越界操作
2--- 部分初始化 //没有初始化的部分默认为0
3--- 不初始化 //随机值
4--- static修饰时 //默认初始化为0

【5】越界操作
int a[5] = {0,1,2,3,4};
printf("%d\n",b[5]); //没有错误警告提示

【6】数组特性
1--- 数组元素在内存中是连续存储的;
2--- 数组名代表首元素的地址(首地址);
3--- sizeof(a)/sizeof(int);

【7】冒泡排序

【8】二维数组
1--- int d[][3] = {1,2,3,4}; //<===> int d[1][3];
//只可以省略行下标
2--- 数组元素在内存中是连续存储的
3--- 数组名代表首元素的地址(首地址);

4--- int a[3][4];
a[0],a[1],a[2]:每一行的首地址

【9】char数组
1--- char a[] = {‘a’,‘b’,‘c’,‘d’,‘e’}; //size = 5
char b[] = {abcde}; //size = 6

2--- char * strcpy(char *a,char *b);

功能:将字符串b,拷贝到字符数组a中去。
返值:返回字符数组a的首地址。
说明:字符数组a必须足够大,拷贝时‘\0’一同拷贝。

3--- char * strcat(char *a,char *b);

功能:把字符数组2连到字符数组1后面
返值:返回字符数组a的首地址
说明:字符数组a必须足够大,
连接前,两串均以‘\0’结束;
连接后,串a的‘\0’取消,新串最后加‘\0’

4--- int strcmp(char *a,char *b);

功能:比较两个字符串
规则:对两串从左向右逐个字符比较(ASCII码),直到遇到不同字符或‘\0’为止
返值:a. 若字符串a < 字符串b, 返回负整数
b. 若字符串a > 字符串b, 返回正整数
c. 若字符串a == 字符串b, 返回零

说明:字符串比较不能用“==”,必须用strcmp

5--- int strlen(char *a);

功能:计算字符串长度
返值:返回字符串实际长度,不包括‘\0’在内;

C语言第5天的更多相关文章

  1. C语言 · 高精度加法

    问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...

  2. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  3. iOS开发系列--Swift语言

    概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...

  4. C语言 · Anagrams问题

    问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的.例如,"Unclear"和"Nuclear ...

  5. C语言 · 字符转对比

    问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...

  6. JAVA语言中的修饰符

    JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...

  7. Atitit 项目语言的选择 java c#.net  php??

    Atitit 项目语言的选择 java c#.net  php?? 1.1. 编程语言与技术,应该使用开放式的目前流行的语言趋势1 1.2. 从个人职业生涯考虑,java优先1 1.3. 从项目实际来 ...

  8. 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】

    说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...

  9. InstallShield 脚本语言学习笔记

    InstallShield脚本语言是类似C语言,利用InstallShield的向导或模板都可以生成基本的脚本程序框架,可以在此基础上按自己的意愿进行修改和添加.     一.基本语法规则      ...

  10. 用C语言封装OC对象(耐心阅读,非常重要)

    用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象 ...

随机推荐

  1. 封装upload文件上传类

    <?php //封装php中的单文件(图片)上传类 /*  //参数1:$file 文件数组  5个属性值 name,type,size,tmp,error   //参数2:文件保存的路径$pa ...

  2. Java Web项目里开发获取上个页面连接地址的问题

    近期做的项目有个问题,就是需要获取上个页面连接地址,我用的IE浏览器,在用location.href连接到新地址的时候,在新地址页面用document.referrer的方法获取不到原地址,我测试了下 ...

  3. TP隐藏入口

    我们知道,在thinkphp的案例中有一个.htaccess文件,里面配置了URL的一些重写规则,如: <IfModule mod_rewrite.c>  RewriteEngine on ...

  4. C# eval()函数浅谈

    <%# Bind("Subject") %> //绑定字段 <%# Container.DataItemIndex + 1%> //实现自动编号<%# ...

  5. js对象遍历

    js对象遍历可以使用比较普遍的方法:如下 var ss={aa:"aa",bb:"bb"}; for(var s in ss){ console.info(&q ...

  6. 解决vim无法返回上次的位置

    就是在vim的配置文件 ~/.vimrc 中添加一行这个: au BufReadPost * |if line("'\"") <= line("$&quo ...

  7. IE浏览器相关的问题及解决方案[转]

    seleniumquery和IE的司机 本网页是关于seleniumquery和IE(Internet Explorer)作为驱动/ WebDriver /浏览器. 首先,确保你检查internete ...

  8. 爱普生 RS330 打印机墨水连供装置墨盒吸墨复位方法

    芯片复位方法: 先按充墨键(墨水灯按键),一下一下按,把墨车按停到右侧换墨盒的位置为止(就是右侧框框正中位置), 全程带电操作,停到换墨盒的位置后再按住芯片复位键(墨盒芯片上面白色的小按键)5秒以上再 ...

  9. SELECT INTO和INSERT INTO SELECT

    --自动创建了target_table表,并复制source_table表的数据到target_table select name,age into target_table from source_ ...

  10. NEON简介【转】

    转自:http://blog.csdn.net/fengbingchun/article/details/38020265 版权声明:本文为博主原创文章,未经博主允许不得转载. “ARM Advanc ...