内容正文:
中等专业学校2022-2023-2教案 编号:
备课组别
计算机组
课程名称
C语言
所在
年级
二年级
主备
教师
授课教师
授课系部
授课班级
授课
日期
课题
二维数组和字符数组实验
教学
目标
掌握二维数组、字符数组的定义、赋值和输入输出的方法
掌握字符串的处理方法和字符串处理函数
掌握与二维数组应用有关的算法
重点
握字符串的处理方法和字符串处理函数
难点
掌握与二维数组应用有关的算法
教法
讲授法、案例教学法、讨论法
教学设备
黑板 计算机 网络机房
教学
环节
教学活动内容及组织过程
个案补充
教
学
内
容
一、在D盘上建立以自己的学号命名的文件夹。
二、上机验证与分析题:
1、分析以下程序,写出运行结果并分析。
#include <stdio.h>
void main()
{int a[2][4]={10,5,-3,17,9,0,0,8};
int b[][4]={{7,16,55,13},{12,10,52,0}};
int i,j,c[2][4];
for (i=0;i<=1;++i)
for (j=0;j<=3;++j)
c[i][j]=a[i][j]+b[i][j];
for (i=0;i<2;++i)
{ for (j=0;j<4;++j)
{ printf("%d\t",c[i][j]);
if (j==3)
printf("
");}}
printf("
");
}
2、分析以下程序,写出运行结果并分析。
#include<stdio.h>
void main()
{ char a1[26],a2[26];
int i;
for (i=0;i<26;++i)
{ a1[i]=i+'a';
a2[i]=i+'A'; }
for (i=0;i<26;++i)
printf("%c ",a1[i]);
printf("
");
for (i=0;i<26;++i)
printf("%c ",a2[i]);
printf("
");
}
3、阅读并分析以下程序,上机调试输入3个字符串,看能否输出最大的字符串。
#include<string.h>
#include<stdio.h>
void main()
{ char s[3][20],s1[20];
int i;
for (i=0;i<3;++i)
gets(s[i]);
if (strcmp(s[0],s[1])>0)
strcpy(s1,s[0]);
else
strcpy(s1,s[1]);
if (strcmp(s[2],s1)>0)
strcpy(s1,s[2]);
puts(s1);
}
4、分析运行结果
#include"stdio.h"
main()
{int j,k;
static int x[4][4],y[4][4];
for(j=0;j<4;j++)
for(k=j;k<4;k++)
x[j][k]=j+k;
for(j=0;j<4;j++)
for(k=j;k<4;k++)
y[k][j]=x[j][k];
for(j=0;j<4;j++)
for(k=0;k<4;k++)
printf("%d,",y[j][k]);
}
三、编程题:
1、编程:求下列一个4×4阶矩阵元素的最小值。源程序以ex8_4.c保存在自己的文件夹内。
(
12 76
4 1
-19 28
55
-6
2 10
13
-2
3 -9
112
167
)
2、编程:矩阵转置,即将一个矩阵的行和列互换。源程序以ex8_5.c保存在自己的文件夹内。
(
b=
1 4
2 5
3 6
a=
1 2 3
4 5 6
)
4、 小结
5、 作业
板
书
设
计
二维数组和字符数组
1、二维数组应用
2、字符数组应用
教 后 札 记
学科网(北京)股份有限公司
$