C语言-Array(High)
2015-08-10 19:52
363 查看
#pragma mark - 二维数组
//定义: 数据类型
数组名[常量表达式1][常量表达式2] = {初值列表}
//int a[2][3] = {{1,2,3},{4,5,6}};
//int a[2][3] = {1,2,3,4,5,6};
//数组元素个数 =常量表达式1 *
常量表达式2
//数组元素个数 =数组所占空间大小 /
每个元素所占空间大小
// int count = sizeof(a) / sizeof(a[0][0])
//float a[3][4] = {0};
//第一维数组长度可以省略,但第二维不能省略
//int a[][4] = {0};
如此定义 其变为一维数组 a[4]
//int a[][4] = {0,0,0,0,0};
如此定义 为 a[2][4]
//int a[][4] = {{0},{0},{0},{0}};
如此定义 为a[4][4]
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// }
//
// int num = 0;
// for (int k = 0; k < 3; k++) {
// for (int h = 0; h < 4 - 1; h++) {
// if (a[k][h] > num) {
// num = a[k][h];
// }
// }
// }
//
// printf("\n%d ",num );
//
//有一个3行4列的二维数组,要求编程找出最大元素,并输出所在的行和列
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// }
//
// int num = 0;
// int num1 = 0;
// int num2 = 0;
// for (int k = 0; k < 3; k++) {
// for (int h = 0; h < 4 - 1; h++) {
// if (a[k][h] > num) {
// num = a[k][h];
// num1 = k;
// num2 = h;
// }
// }
// }
//
// printf("\na[%d][%d] = %d",num1,num2,num );
//将⼀个⼆维数组的行和列交换,存储到另外⼀个数组中去
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// printf("\n");
// }
// int b[4][3] = {0};
// for (int k = 0; k < 3; k++) {
// for (int h = 0 ; h < 4; h++) {
// int num = a[k][h];
// a[k][h] = b[h][k];
// b[h][k] = num;
//
// }
//
// }
// printf("\n");
// for (int l = 0; l < 4; l++) {
// for (int u = 0; u < 3; u++) {
// printf("%d ",b[l][u]);
// }
// printf("\n");
// }
#pragma mark - 字符串数组
//定义字符数组
// char ch_1[10] = {'a','b','c'};
// char ch_2[10] = "abc";
//定义二维数字符组
//char ch_3[2][10] = {{'a','b','c'},{'d','e','f'}};
//字符串数组
//二维数组元素个数 =常量表达式1 *
常量表达式2
//char ch_4[2][4] = {"abc","def"};
//访问字符串数组
// char ch[3][10] = {"iPhone6","iPad air2","iMac"};
// // 遍历数组 ch
打印字符串 (访问字符串)
//// for (int i = 0 ; i < 3 ; i++) {
//// printf("%s ",ch[i]);
//// }
//
// //遍历 ch
打印每一个字符
//
// for (int i = 0; i < 3;i++) {
// for (int j = 0; j < strlen(ch[i]) ; j++) {
// printf("%c ",ch[i][j]);
// }
// printf("\n");
// }
//把 iPhone6换成 iPhone6plus
// char ch[3][20] = {"iPhone6","iPad air2","iMac"};
// char str1[5] = "plus";
//
// strcat(ch[0], str1);
//
// for (int i = 0; i < 3; i++) {
//
// printf("%s ",ch[i]);
//
// }
//定义三维数组
// int a[2][3][4] = {0};
//三维数组定义: 类型
数组名[常量表达式1][常量表达式2][常量表达式3] = {初值列表}
//数组元素的个数 =各维度的乘积
//随机对 a数组
每一个元素赋值
//数组所占空间大小:1.数组元素个数 *每个元素所占空间 2.sizeof
求数组大小
// int a[10][10][10] = {0};
//
// for (int i = 0; i < 10 ; i ++) {
// for (int j = 0 ; j < 10 ; j++) {
// for (int k = 0 ; k < 10 ; k++) {
// a[i][j][k] = arc4random()%(100 - 1 + 1) +1;
// }
// }
// }
//
// for (int i = 0 ; i < 10 ; i++) {
// for (int j = 0 ; j < 10; j++) {
// for (int k = 0 ; k < 10 ; k++) {
// printf("%d ",a[i][j][k]);
// }
// }
// }
//从键盘输入人名并输出
// char name[20] = {0};
// printf(" 请输入姓名:\n");
// scanf("%s",name);
// printf("%s",name);
//
// 输入zhangsan
输出 zhangsan
//但当输入 zhang san时 由于有空格
后面的 san
打印不出来
//
//
//
// char name[20] = {0};
// printf(" 请输入姓名:\n");
// scanf("%[^\n]",name);
// printf("%s",name);
////表示\n出现时才完成输入
//
//语法糖
// int a[10] = {1,2,3,4,5,6,7,8,9,10};
// //打印a[1]
// printf(" %d\n ",a[1]);
// printf("%d",1[a]);
//定义: 数据类型
数组名[常量表达式1][常量表达式2] = {初值列表}
//int a[2][3] = {{1,2,3},{4,5,6}};
//int a[2][3] = {1,2,3,4,5,6};
//数组元素个数 =常量表达式1 *
常量表达式2
//数组元素个数 =数组所占空间大小 /
每个元素所占空间大小
// int count = sizeof(a) / sizeof(a[0][0])
//float a[3][4] = {0};
//第一维数组长度可以省略,但第二维不能省略
//int a[][4] = {0};
如此定义 其变为一维数组 a[4]
//int a[][4] = {0,0,0,0,0};
如此定义 为 a[2][4]
//int a[][4] = {{0},{0},{0},{0}};
如此定义 为a[4][4]
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// }
//
// int num = 0;
// for (int k = 0; k < 3; k++) {
// for (int h = 0; h < 4 - 1; h++) {
// if (a[k][h] > num) {
// num = a[k][h];
// }
// }
// }
//
// printf("\n%d ",num );
//
//有一个3行4列的二维数组,要求编程找出最大元素,并输出所在的行和列
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// }
//
// int num = 0;
// int num1 = 0;
// int num2 = 0;
// for (int k = 0; k < 3; k++) {
// for (int h = 0; h < 4 - 1; h++) {
// if (a[k][h] > num) {
// num = a[k][h];
// num1 = k;
// num2 = h;
// }
// }
// }
//
// printf("\na[%d][%d] = %d",num1,num2,num );
//将⼀个⼆维数组的行和列交换,存储到另外⼀个数组中去
// int a[3][4] = {0};
// for (int i = 0; i < 3; i++) {
// for (int j = 0; j < 4 ; j++) {
// a[i][j] = arc4random()%(40 - 20 + 1) + 20;
// printf("%d ",a[i][j] );
// }
// printf("\n");
// }
// int b[4][3] = {0};
// for (int k = 0; k < 3; k++) {
// for (int h = 0 ; h < 4; h++) {
// int num = a[k][h];
// a[k][h] = b[h][k];
// b[h][k] = num;
//
// }
//
// }
// printf("\n");
// for (int l = 0; l < 4; l++) {
// for (int u = 0; u < 3; u++) {
// printf("%d ",b[l][u]);
// }
// printf("\n");
// }
#pragma mark - 字符串数组
//定义字符数组
// char ch_1[10] = {'a','b','c'};
// char ch_2[10] = "abc";
//定义二维数字符组
//char ch_3[2][10] = {{'a','b','c'},{'d','e','f'}};
//字符串数组
//二维数组元素个数 =常量表达式1 *
常量表达式2
//char ch_4[2][4] = {"abc","def"};
//访问字符串数组
// char ch[3][10] = {"iPhone6","iPad air2","iMac"};
// // 遍历数组 ch
打印字符串 (访问字符串)
//// for (int i = 0 ; i < 3 ; i++) {
//// printf("%s ",ch[i]);
//// }
//
// //遍历 ch
打印每一个字符
//
// for (int i = 0; i < 3;i++) {
// for (int j = 0; j < strlen(ch[i]) ; j++) {
// printf("%c ",ch[i][j]);
// }
// printf("\n");
// }
//把 iPhone6换成 iPhone6plus
// char ch[3][20] = {"iPhone6","iPad air2","iMac"};
// char str1[5] = "plus";
//
// strcat(ch[0], str1);
//
// for (int i = 0; i < 3; i++) {
//
// printf("%s ",ch[i]);
//
// }
//定义三维数组
// int a[2][3][4] = {0};
//三维数组定义: 类型
数组名[常量表达式1][常量表达式2][常量表达式3] = {初值列表}
//数组元素的个数 =各维度的乘积
//随机对 a数组
每一个元素赋值
//数组所占空间大小:1.数组元素个数 *每个元素所占空间 2.sizeof
求数组大小
// int a[10][10][10] = {0};
//
// for (int i = 0; i < 10 ; i ++) {
// for (int j = 0 ; j < 10 ; j++) {
// for (int k = 0 ; k < 10 ; k++) {
// a[i][j][k] = arc4random()%(100 - 1 + 1) +1;
// }
// }
// }
//
// for (int i = 0 ; i < 10 ; i++) {
// for (int j = 0 ; j < 10; j++) {
// for (int k = 0 ; k < 10 ; k++) {
// printf("%d ",a[i][j][k]);
// }
// }
// }
//从键盘输入人名并输出
// char name[20] = {0};
// printf(" 请输入姓名:\n");
// scanf("%s",name);
// printf("%s",name);
//
// 输入zhangsan
输出 zhangsan
//但当输入 zhang san时 由于有空格
后面的 san
打印不出来
//
//
//
// char name[20] = {0};
// printf(" 请输入姓名:\n");
// scanf("%[^\n]",name);
// printf("%s",name);
////表示\n出现时才完成输入
//
//语法糖
// int a[10] = {1,2,3,4,5,6,7,8,9,10};
// //打印a[1]
// printf(" %d\n ",a[1]);
// printf("%d",1[a]);
相关文章推荐
- C语言-Array
- C语言-Loop
- C++学习笔记之erase
- 一道面试题细说C++类型转换
- C语言-Branch
- C++标准程序库笔记(1)
- c++ void,内存操作函数
- C++ template
- C++中四种强制类型转换
- 详解c++构造函数
- C++面向对象之浅谈
- C++对象的静态类型与动态类型
- c++中,static,和const,以及引用类型的作用
- C与C++的细微区别——省略形式参数名
- C++ opencv 数字识别
- C++的namespace
- c/c++处理字符串函数
- JNA java调用c/c++代码
- JNA调用C语言动态链接库学习实践总结
- 2015年8月10日 C语言 宏和快排