C语言数组练习
来源:互联网 发布:淘宝网卖家开店流程 编辑:程序博客网 时间:2024/04/29 03:24
今天开始讲二维数组,没有什么说的,只是都是新知识,需要多加练习。
概念:数组名后面有两个下标的数组被称为二维数组
定义:常量说明符 数组名【常量表达式1】【常量表达式2】= {值1,值2,...};
其中常量表达式1代表的是一维数组的长度,常量表达式2代表的是二维数组的长度
练习1:将一个二维数组的行和列交换,存储到另一个数组中去。
int array1[2][3] = {1,2,3,4,5,6}
int array2[3][2] = {0};
for (int i = 0;i < 2;i++){
for (int j = 0;j < 3;j++){
arrar2[j][i] = array1[i][j];
}
}
for (int i = 0;i < 2;i++){
for(int j = 0;j < 3;j++){
printf("array1[%d][%d] = %d",i ,j,array1[i][j]);
}
printf("\n");
for(int i = 0;i < 3;i++){
for(int j = 0;j < 2;j++){
printf("array2[%d][%d] = %d "i,j,array2[i][j]);
}
printf("\n");
}
练习2.有一个3行4列的二维数组,要求编程找出最大元素,并输出所在的行和列
int max = 0;
int array3[3][4] = {12,24,3,4,24,13,15,32,21,11,22,17};
for(int i = 0;i < 3;i++){
for(int j = 0;j < 4;j++){
max = max > array3[i][j] ? max : array3[i][j];
}
}
for(int i = 0;i < 3;i++){
for(int j = 0;j < 4;j++){
if(max == array3[i][j]){
printf("mx = %d在第%d行第%d列\n",max,i+1,j+1);
}
}
}
二维数组在定义的时候如果元素未一一列出,未赋值的元素自动初始化为0.
字符串数组:
概念:用来存放字符串(以‘\0’结尾的字符数组被称为字符串)的数组
定义:
char 数组名【常量表达式1】,【常量表达式2】 = {值1,值2,值3,...};
注意事项:字符数组实际上是字符型二维数组
每个字符串长度不超过二维长度 -1(字符串需要存放‘\0’)
字符串访问:数组名+一维下标
练习3.创建一个字符串数组(内容是你一圈人的姓名),输出最长字符串的长度
char string2[4][5] = {"Yanweimin","Wangxuejuan","Guofeifei","Qinjunzjen"};
unsinged long max = 0;
for(int i = 0;i < 4;i++){
max = max > strlen(string2[i] ? max : strlen(string2[i]));
}
pringtf("最大的字符串长度 = %lu\n",max);
收获:1.求字符串长度的结果数据类型是unsinged long (无符号整型数)
2.无论是赋值还是两个数作比较,都需要双方数据类型一致
3.字符串访问:数组名+ 一维下标
练习4.创建一个 字符串数组(内容是你一圈人的姓名),对字符串(英文)从小到大排序
char string3[4][15] = {"Yanweimin","Wangxuejuan","Guofeifei","Qinjunzhen"};
for(int i = 0;i < 4;i++){
pringtf("string3[%d] = %s\n",i,string3[i]);
}
char string[15] = {0};
for(int i = 0;i < 4 - 1;i++){
for(int j = 0;j < 4 - 1 - i;j++){
if(strcmp(string3[j],string3[j+1] ) > 0){
strcpy(string,string3[j]);
strcpy(string3[j],string[j+1]);
srecpy(string3[j+1],string);
}
}
}
for(int i = 0;i < 4;i++){
printf("string3[%d] = %s\n",i,string3[i]);
}
- C语言数组练习
- C语言数组练习1
- C语言数组练习2
- C语言数组练习相关
- 11.21C语言----数组指针练习
- c语言数组及练习代码
- C语言练习-指针(数组,字符串)
- C语言练习 字符数组处理
- C语言 一维数组练习~
- C语言数组练习 冒泡排序~
- C语言基础练习之数组
- C语言一维数组&&二维数组练习
- C语言之多维数组简单题目练习
- C语言编程(练习1:数组和指针)
- C语言编程(练习2:数组和指针)
- C语言编程(练习3:数组与指针)
- C语言编程(练习5:数组与指针)
- C语言编程(练习4:数组与指针)
- 使用UITabBarViewCOntroller时隐藏tabbar
- 像素,分辨率,以及点,px ,pt ,PPI ,DPI
- Codeforces 528D
- scp跨机远程拷贝
- CFileDialog会自动更改程序当前工作目录(解决方案)!
- C语言数组练习
- Linux的automake出现的问题(Makefile.am: C objects in subdir but `AM_PROG_CC_C_O' not in `configure.ac')
- JavaScript中JSON使用
- 打印js插件
- C&OC的数据类型分类
- oracle 中身份证号15位升18位
- spring_ThreadPoolTaskExecutor和jdk1_7_ThreadPoolExecutor原理解析
- Ubuntu下usb设备读写权限设置
- AspectJ使用注解方式报错