- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验10 数组和字符串
【实验目的】
1:理解一维数组和二维数组在内存中的存放形式。
2:掌握一维数组和二维数组变量的定义和数组元素的引用。
3:掌握字符串库函数的用法。
4:掌握字符串和字符数组的区别。
【实验准备】
1:一维数组的定义。
定义形式如下: 存储类型符 数据类型符 数组变量名[整形常量表达式]
如:int a[10];
关于一维数组定义的几点说明:
A : 数组的大,,,,必须是整形常量表达式,不能是变量和变量表达式。
B : 数组定义之后,系统将给其分配一定大,,,,的内存单元。
数组所占内存单元的字节数 = 数组大,,,, * sizeof(数组元素类型)
C : 数组中每个数组元素的类型均相同,他们占用内存中连续的存储单元。其中第一个数组元素的地址是整个元素所占内存块的低地址,也是数组的首地址。
2:一维数组的引用
C语言规定,数组是一种数据单元的序列,不能直接存取整个数组,只能引用数组中的各个数据单元。引用数据单元的格式为: 数组变量名[下标] 引用的时候注意下标的取值范围。
3:一维数组的初始化
一种是在数组定义时赋值,一种是先定义数组然后在程序中再对数组元素进行逐一赋值。
4:二维数组的定义和引用
二维数组在物理上采用按行存储的循序存储方式,我们称这种存储顺序为以行序为主序的循序存储结构。
定义形式如下:数据类型符 数组变量名[整型常量表达式1][整型常量表达式2]
5:二维数组的初始化赋值
A: int a[2][3] = { {1,2,3},{4,5,6}};
B: int a[2][3] = {{1},{3}};
C: int a[ ][3 ] = {{1,2},{4}};
D: int a[2][3] = {1,2,3,4,5,6};
E : int a[2][3] = {1,2,3};
F: int a[ ][3] = {1,2};
G: 在程序中进行赋值 用循环的嵌套;
6: 字符串输入的方法。
A : gets 函数的调用格式为:
Gets(字符数组变量名);
例子: char str[80];
Gets (str); 注意 字符数组的名字 其实代表的是字符数组的首地址。(这里还要注意的就是gets函数和scanf函数的区别是什么。)
B: puts函数的调用格式为:
Puts(字符串的地址);
【实验内容】
1、定义一个2行3列的整型二维数组,然后用循环的方式赋值 从键盘输入给其赋值并逐一打印出来。(引申(选做):如何修改程序求出该二维数组的最大值以及各行的平均值?)
#include stdio.h
void main()
{
int a[2][3];
int i,j;
for (i=0;i2;i++)
for(j=0;j3;j++)
scanf(%d,a[i][j]);
for (i=0;i2;i++)
{
for(j=0;j3;j++)
printf(%4d,a[i][j]);
printf(\n);
}
}
2、青年歌手参加歌曲大奖赛,有10个评委对她的进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。
#include stdio.h
void main()
{
float min,max,a[10],sum,s=0;
int i;
for(i=0;i10;i++)
{
scanf(%f,a[i]);
max=a[0]; min=a[0];
if (maxa[i])
max=a[i];
if(mina[i])
min=a[i];
s=s+a[i];
sum=(s-max-min)/8;
}
printf(%f\n,sum);
}
3、从键盘上输入3个字符串后原样输出,并要求找出其中最大者进行输出。
#include stdio.h
#include string.h
void main( )
{
char a[10],b[10],c[10];
char max[10];
printf(请输入三个字符串,请以空格隔开,回车确认: \n);
scanf(%s %s %s,a,b,c);
printf(输入的三个字符串为: \n);
printf(a=%s\n,a);
printf(b=%s\n,b);
printf(c=%s\n,c);
strcpy(max,a);
if (strcmp(max,b)0) strcpy(max,b);
if (strcm
您可能关注的文档
- 变量与基本据类型.ppt
- Ch.2 ++基础.ppt
- 1第一章C言入门.ppt
- 第二章第一数据类型和表达式.doc
- 第三章基本据类型.doc
- 用户建立的据类型.ppt
- 第2章_上C语言资料.ppt
- 第2章基本据类型及输入输出.ppt
- 第1章 数与运算.ppt
- 2.变量和据类型.ppt
- Unit 6 Get Close to Nauture Lesson 22 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 23 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025食品饮料行业AI转型白皮书-2025食品饮料行业数智化转型领先实践.pdf
- Unit 7 Be Together Lesson 24 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 25 -课件-2025-2026学年度北京版英语四年级上册.pptx
- Unit 7 Be Together Lesson 26 -课件-2025-2026学年度北京版英语四年级上册.pptx
- 2025年广州体育职业技术学院单招职业倾向性考试题库完美版.docx
- 软件公司员工考勤异常处理.doc
- 2025年土地登记代理人之土地登记相关法律知识题库500道及完整答案【有一套】.docx
- 2025年四平职业大学单招职业适应性考试题库含答案.docx
文档评论(0)