c语言程序设计 江宝钏 实验六,《C语言程序设计》(江宝钏著)实验六答案.pdf

6.4 实验六 数组

一、 实验目的与要求

1. 掌握一维数组的定义、赋值和输入输出的方法。

2. 理解一维数组的存储方法及下标的表示方法。

3. 掌握与数组有关的算法(特别是排序算法)。

4. 掌握二维数组的定义、赋值和输入输出的方法。

5. 理解二维数组的存储方法及下标的表示方法。

6. 实验4 学时。

二、实验内容

这里有改动

1.程序验证题与改错题

(1)程序验证题

① 给定一个整型数组a,要求求出其中小于0 的元素的个数。请验证下面的程序是否

符合题目要求。

#defineN 10

voidmain()

{

int a[N] {11,2,4,-1,5,-3,-66,0,10,-5};

int i; /*变量i 用于for 循环*/

int count 0; /*变量count 用于技术,初始化为0*/

for (i 0;i

if(a[i]<0)

count++; /*如果元素a[i]<0,count 计数+1*/

printf("%d\n",count);

}

② 给定一个整型二维数组a(3,3),要求求出对角线元素的和。请验证下面的程序是否

符合题目要求。

#include

#defineN 3

voidmain()

{

int a[N][N] {{1,2,3},{4,5,6},{7,8,9}};

int i,j; /*变量i,j 用于for 循环*/

int sum 0; /*变量sum 用于求和,初始化为0*/

for (i 0;i

for(j 0;j

if(i j)sum+ a[i][j]; /*如果是对角线元素,sum+a[i][j]*/

printf("%d\n",sum);

return 0;

}

注1:在程序验证题①的基础上,修改程序,求出数组a 中大于a[0]的元素之和。

答;

#include

#defineN 10

voidmain()

{

int a[N] {11,2,4,-1,5,-3,-66,0,10,-5};

int i,sum 0;

int count 0;

for(i 0;i

{

if(a[i]<0)

count++;

if(a[i]>a[0])

sum+ a[i];

}

printf("小于0元素的个数为:%d\n",count);

printf("大于a[0]的元素之和为:%d\n",sum);

}

注2:对上述程序②进行优化,消除内循环,实现同样的效果。在② 的基础上,修改

程序,求出数组a 中反对角线元素之和。提示:内循环用逆序;i+j N-1。

答:

#include

#define N 3

void main()

{

int a[N][N] {{1,2,3},{4,5,6},{7,8,9}};

int i,j;

int sum 0;

for (i 0;i

{

j i;

sum+ a[i][j];

}

printf("%d\n

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值