- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言第五次线上培训
沈阳工业大学网络管理中心C语言入门冬令营
第五节 利用数组处理批量数据(2)
一.二维数组补漏
1.二维数组的初始化
①分行给二维数组赋初值
int a[3][4] = {{1, 2, 3, 4} , {5, 6, 7, 8}, {9, 10, 11, 12}};
把第一个花括号内的数据给第一行的元素,第二个花括号内的数据赋给第二行的元素
②统一写在一个花括号内
int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
按数组元素在内存中的排列顺序对各元素赋初值
③对部分元素赋初值
int a[3][4] = {{1}, {5}, {9}};
作用是只对各行第一列(即序号为0的列)的元素赋值,其余元素值自动为0.
1 0 0 0
5 0 0 0
9 0 0 0
当然也可以对各行中的某一元素赋初值,例如:
int a[3][4] = {{1}, {0, 6}, {0, 0, 8}};
对应的结果为
1 0 0 0
0 6 0 0
0 0 8 0
2.上次矩阵转置答案
#include stdio.h
int main()
{
int a[2][3]{{1, 2, 3}, {4, 5, 6}};
int b[3][2], i, j;
printf (array a:\n);
for(i = 0; i = 1; i++){ //处理a数组中的一行中各元素
for(j = 0; j = 2; j++){ //处理a数组中某一列元素
printf (%5d, a[i][j]); //输出a数组各元素
b[j][i] = a[i][j]; //将a数组元素的值赋给b数组相应元素
}
printf (\n);
}
printf (array b:\n); //输出b数组各元素
for(i = 0; i = 2; i++){
for(j = 0; j = 1; j++)
printf (%5d, b[i][j]);
printf (\n);
}
return 0;
}
样例输出:
array a:
1 2 3
4 5 6
array b:
1 4
2 5
3 6
字符数组
HOW
定义方式和定义数值数组方法类似。
例:
char c[10];
c[0] = ‘I’; //注意是单引号
c[1] = ‘ ’;
c[2] = ‘a’;
c[3] = ‘m’;
c[4] = ‘ ’;
c[5] = ‘h’;
c[6] = “a”;
c[7] = ‘p’;
c[8] = ‘p’;
c[9] = ‘y’;
当然也可以
char c[10] = {‘I’, ‘ ’, ‘a’, ‘m’, ‘ ’, ‘h’, ‘a’, ‘p’, ‘p’, ‘y’};
把10个字符分别赋给c[0]~c[9]这10个元素
假如
char c[20] = {‘I’, ‘ ’, ‘a’, ‘m’, ‘ ’, ‘h’, ‘a’, ‘p’, ‘p’, ‘y’};
则只将这些字符赋给数组中前面的那些元素,其余元素自动定为空字符(即’\0’);
系统也可以自动根据初值个数确定数组长度
char c[] = {‘I’, ‘ ’, ‘a’, ‘m’, ‘ ’, ‘h’, ‘a’, ‘p’, ‘p’, ‘y’};
也可以初始化二维字符数组例如
char diamond[5][5] = {{ , , *}, { ,*, , *}, {*, , , , *}, { , *, , *}, { , , *}};
最后能够输出
*
* *
* *
* *
*
程序样例:
#include stdio.h
int main()
{
char diamond[5][5] = {{ , , *}, { ,*, , *}, {*, , , , *}
, { , *, , *}, { , , *}};
for(int i = 0; i 5; i++){
for(int j = 0; j 5; j++){
printf (%c, diamond[i][j]);
}
printf (\n);
}
return 0;
}
程序说明:每行包括5个字符,有的是空格,有的是星号,之后循环输出即可。注意换行符的位置。
字符串和字符串结束标志
字符串中的字符是逐个存放到数组元素中的。
例如第一个例子
为了测定字符串的实际长度,则规定了一个“字符串结束
文档评论(0)