内容正文:
中等专业学校2022-2023-2教案 编号:
备课组别
计算机组
课程名称
C语言
所在
年级
二年级
主备
教师
授课教师
授课系部
授课班级
授课
日期
课题
一维数组综合练习
教学
目标
对一维数组的进行一次检验,查看学生掌握情况
复习一维数组的应用
重点
一维数组的定义和初始化应用
难点
一维数组结合for循环的使用
教法
讲授法、案例教学法、讨论法
教学设备
黑板 计算机 网络机房
教学
环节
教学活动内容及组织过程
个案补充
教
学
内
容
一、新课导入
本章节知识点已经学习结束,本次练习检验一下各自的掌握情况,不明确的地方和不懂的要问清。
二、内容设计
1、以下对一维数组 a 的正确明是
A) int n; scanf("%d",&n); int a[n];
B)int n=10,a[n];
C) int a(10);
D)#define SIZE 10
int a[SIZE];
2、若有说明:int a[10];则对数组元素的正确引用是
A)a[10] B)a[3,5] C)a(5) D)a[10-10]
3、下面程序有错误的行是
main()
{ float a[10]={0.0};
int i;
for(i=0;i<3;i++) scanf("%d",&a[i]);
for(i=1;i<10;i++) a[0]=a[0]+a[i];
printf("%f
",a[0]);
}
A)没有错误 C)第 5 行有错误
B)第 3 行有错误 D)第 7 行有错误
4、下面程序的运行结果是
#include<stdio.h>
main()
{int a[6],i;
for(i=1;i<6;i++)
{a[i]=9*(i-2+4*(i>3))%5;
printf("%2d",a[i]); }}
A) -4 0 4 0 4 B)-4 0 4 0 3
B) C)-4 0 4 4 3 D)-4 0 4 4 0
5、下面程序以每行 4 个数形式输出 a 数组,请分析填空。
#define N 20
main()
{int a[N],i;
for(i=0;i<N;i++) scanf("%d",&a[i]);
for(i=0;i<N;i++)
{if((i+1)%4==0) printf(“
”);
printf("%3d",a[i]);} }
6、 下面程序的功能是输入5 个整数,找出最大数和最小数所在 的位置,并把二者对调,然后输出调整后的 5 个数。
main()
{int a[5],max,min,i,j,k;
for (i=0;i<5;i++)
scanf("%d:,&a[i];
min=a[0];
for (i=1;i<5;i++)
if (a[i]<min) {min=a[i]; k = i;}
max=a[0];
for (i=1;i<5;i++)
if a[i]>max) {max=a[i]; j = i;}
i = a[k]; a[k] = a[j]; a[j] = i;
printf("
The position of min is:%3d
",k);
printf("
The position of max is:%3d
",j);
for (i=0;i<5;i++)
printf("%5d",a[i]); }
7、下面程序的运行结果是
main()
{int i,f[10];
f[0]=f[1]=1;
for(i=2;i<10;i++)
f[i]=f[i-2]+f[i-1];
for(i=0;i<10;i++)
{if(i%4==0) printf("
");
printf("%3d",f[i]); } }
8、下面程序的运行结果是
main()
{int a[10]={1,2,2,3,4,3,4,5,1,5};
int n=0,i,j,c,k;
for(i=0;i<10-n;i++)
{c=a[i];
for(j=i+1;j<10-n;j++)
if(a[j]==c)
{for(k=j;k<10-n;k++)
a[k]=a[k+1];
n++;} }
for(i=0;i<10-n;i++)
printf("%3d",a[i]);}
9、设数组 a 包括 10 个整型元素,下面程序的功能是求出 a 中 各相邻两个元素的和,并将这些和存在数组 b 中,按每行 3 个元素的形式输出。