大工20秋《c&c 语言程序设计》辅导资料八
C/C++语言程序设计辅导资料八一、主题:数组二、学习时间:2020年11月16日-11月22日“不忘初心、牢记使命”主题理论学习:
“一带一路”是促进共同发展、实现共同繁荣的合作共赢之路,是增进理解信任、加强全方位交流的和平友谊之路。中国政府倡议,秉持和平合作、开放包容、互学互鉴、互利共赢的理念,全方位推进务实合作,打造政治互信、经济融合、文化包容的利益共同体、命运共同体和责任共同体。
摘选自《推动共建丝绸之路经济带和21世纪海上丝绸之路的愿景与行动》三、知识脉络:
第6章 数组
6.4 字符数组
6.5 数组应用四、学习要求:
掌握字符数组的定义及初始化方法
理解字符串的特点
掌握用字符数组存储及操作字符串的方法
掌握一维数组的基本应用
掌握二维数组的基本应用五、重点难点:
数组的定义及初始化
字符串的存储及遍历
排序算法六、主要内容:
1.字符数组
char 型数组的两个含义
存放字符的数组, 每个元素存储一个字符;
存放字符串的数组 string,该串中的每个字符存储在一个数组元素中,字符串的结尾用特定的字符串终止符’\0’表示。
字符数组的输入与输出
逐个字符输入输出
用格式符“%c”或字符IO函数
字符串输入输出
用格式符“%s”或字符串IO函数2.数组应用
一维数组案例分析
例. 编写程序统计学生对食堂满意程度的调查:假设抽查40个学生的问卷,满意度得分为(1~10),输出每个分数投票的人数。
参考答案:
学生打分数组int anwsers[ 40 ] ;
得分情况数组int counters [ 11 ]={0};
for(i =0~40)
for( k = 1~10)
if(anwsers==k) {
counters[ k ]++;
break;
}
二维数组案例分析
例. 计算每门课程的平均成绩:一个学习小组有5个人,每个人有3门课的考试成绩。
分析:
数据分析:
int score存储五个人3门课的成绩。
float average存储各门课平均成绩。
char name存储各门课名称。算法描述:
1. 输出每门课程的名称及成绩(每门课一行)。
2. 计算每门课程平均成绩,即对每行计算平均成绩。
3. 输出每门课程平均成绩。七、习题:
1.下面程序的运行结果是()
char ch={"65ab21"};
int i,s=0;
for(i=0;ch>='0'&&ch<='9';i++)
s=10*s+ch-'0';
printf("%d\n",s);
A.12ba56
B.6521
C.6
D.65
答案:D2.下述对C语言字符数组的描述中错误的是() 。
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入、输出
C.可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值
D.不可以用关系运算符对字符数组中的字符串进行比较
答案:C3.不正确的赋值或赋初值的方式是() 。
A.char str[]="string";
B.char str={'s', 't', 'r', 'i', 'n', 'g'};
C.char str;str="string";
D.char str={'s', 't', 'r', 'i', 'n', 'g', '\0'};
答案:C4.有下面的程序段,则输出结果为( ) 。
char a, b[]=“china”;
a=b;printf(“%s”,a);
A.运行后输出china
B.运行后输出ch
C.运行后输出chi
D.编译出错
答案:D5.判断字符串s1是否大于字符串s2,应当使用( ) 。
A.if (s1>s2)
B.if (strcmp(s1,s2))
C.if (strcmp(s2,s1)>0)
D.if (strcmp(s1,s2)>0)
答案:D6.数组char myArray=”long\0 a”,则printf("%s",myArray)的输出结果是( )。
A.long a
B.long
C.lon
D.以上都不对
答案:B7.要为字符型变量a赋初值,下列选项中哪一个是正确的( ).
A.char a=’\0’
B.char a=”3”
C.char a=A
D.前面都不对
答案:A8.下列各语句定义了数组,其中哪一个是不正确的( )。
A.char a={"China","American","Asia"}
B.int b={1,2}
C.float x[ ]={1,2,4,6,8,10}
D.int y[]={1,2,3,4,5,6};
答案:C9.下面叙述中,正确的有( )。
A.设变量定义为 char s[ ]="hello",则数组s中有6个元素.
B.已定义int w;程序中可以引用的数组元素分别是w,w,w,w,w.
C.已定义int n=4 ; 则执行语句float x={1,2,3,4}; 后,x的值是3 .
D.已定义int a={1,2}; 则元素a 的值是不确定的值.
E.以上答案都不对
答案:E10.若有以下说明和语句,则输出结果是()。
char str[ ]=”\”c:\\abc.dat\””;
printf(“%s”, str);
A.字符串中有非法字符
B.\”c:\\abc.dat\”
C.”c:\abc.dat”
D.”c:\\abc.dat”
答案:C本内容由易百教育整理发布
网址www.openhelp100.com
QQ 515224986
页:
[1]