当前文章复盘c语言的数组: 数组定义规则、数组空间类型、数组下标使用、数组存放的数据类型、数组数据替换、插入、输入、输出、字符串输入、输出、长度计算等等。
一、数组概念 数组是一个相同类型元素的集合。
定义数组语法: [数组的大小]; int data [100]; 解释:
定义一个int类型数组名称是data,可以存放100int类型的数据,总大小字节: 100*4。
可以填充那些参数?
基本数据类型(char 。。float、int。。。。。)、结构体数据类型、指针类型等。
数组概念说明
(1)[]称为下标符号,用来操作数组。比如: b=a[10]; //将a数组里第10个元素取出来赋值给b变量。
(2).访问数组时,下标的范围是从0开始。比如: int a[10]; 下标范围: 0~9
(3).数组在定义时,[]下标里填充的大小必须是常量。(c89标准) 比如: int a[b]; //错误 int a[10];
(4).数组只有在定义的时候,才可以整体赋值。比如: int a[10]={12,34,56,78,90};
(5).数组在定义的时候,如果赋了值,[]下标里可以不用指定大小。 比如: int a[]={12,34,56};
(6).数组在定义的时候,至少给一个下标赋了初始值,其他下标默认置为0。比如: int a[10]={0};
#include int main(void){ int buff_i[10]={10,20,30}; //定义整数类型数组 float buff_f[10]={10.123,20.123,30.123}; //定义浮点数类型数组 char buff_c[10]=123456;//定义字符串类型数组,结尾多了一个结束符\0 //说明: 在c语言里面没有专用字符串类型,字符串本身还是使用char类型定义。qstring sting char buff[10]={'1','2','3','4'}; //定义字符类型数组 int i; //打印整型 for(i=0;i<10;i++) { printf(%d ,buff_i[i]); } printf(\n); //打印浮点类型 for(i=0;i<10;i++) { printf(%f ,buff_f[i]); } printf(\n); //打印字符串 printf(%s\n,buff_c); //打印字符类型 for(i=0;i<10;i++) { printf(%c ,buff[i]); } printf(\n); return 0;} 二、数组输入输出#include //从键盘上录入一串数据,倒序输出int main(void){ int i; int buff[5]; printf(请输入5个数据:); for(i=0;i=0;i--) { printf(%d ,buff[i]); //将数据打印到控制台终端 } printf(\n); return 0;} 三、数组的练习题目 (1). 从键盘上录入一串数据(整数),将数组里的10替换成66,并统计替换的数量。
#include int main(void){ //将数组里的10替换成66,并统计替换的数量。 int buff[10]={10,34,10,347,23,10,123,56,78,10}; int i,cnt=0; for(i=0;i<10;i++) { if(buff[i]==10) { cnt++; //记录数量 buff[i]=66; } } printf(替换的数量%d\n,cnt); for(i=0;i;i++)> 四、字符串 (1)字符串大小计算示例
char str1[]={'a','b','c'}; //3 char str2[]=abc; //4 printf(str1=%d\n,sizeof(str1)); //3 printf(str2=%d\n,sizeof(str2)); //4 //为什么是4 ?因为字符串结尾自带一个'\0' // '\0'表示是字符串的结束符号 (2)字符串的长度计算
#include int main(void){ char str[100]; //字符串如何从键盘上录入? scanf(%s,str); //从键盘上录入一个字符串 //str为什么不加&符号? 因为数组的名称就是地址(表示是数组首地址)。 //字符串如何输出? printf(str=%s\n,str); //如何知道从键盘上输入了多少个字符? //首先得知道一点: 字符串结尾符'\0' 字符 int i=0; while(str[i]!='\0') //判断字符串的结束符 { i++; } printf(字符串的长度=%d\n,i); return 0;} (3)字符串的衔接符号
万物互联时代下网络安全不可小觑
特朗普推迟中国输美产品关税计划, 美国两大照明大厂宣布暂停涨价
苹果正在研究隐藏iPad和iPhone天线缝隙技术?
联发科进攻再攻无线WiFi市场
一加宣布2019年首发骁龙855旗舰 下一代产品可能会被命名为一加7
C语言总结_数组知识
“智慧用电”是什么呢?
这款无人机不需要用操作杆,而是一根线!
德州仪器CTO:解密在信息洪流中推进大数据发展的关键技术
STM32的IO端口高8位或低8位单独操作方法
关于ARM核异常与中断处理机制研究
多功能食品安全检测仪器的特点
安全是未来汽车发展的关键所在
双绞线的两种接法,网络测试最常用的PING命令
德国西克推出全球最小的安全光幕Minitwin
资讯:英特尔5.6亿出售部分芯片业务 联发科接盘
“千城一面”困局难解,昕诺飞积极参与中国城市亮化建设
如何理解泛化是深度学习领域尚未解决的基础问题
lm317应用电路图汇总(集成电路、扩流电路、稳压电路)
i.MX 95汽车座舱和连接域控制解决方案概述