【C++百日刷题计划】Day2~数组的使用(请编程计算下列给出的二维数组周边元素之和)

80 阅读4分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第10天,点击查看活动详情

文章目录

🏠🏠🏠**前言:**

一、今日习题以及答案

✨**习题要求:**

✨**习题分析:**

✨**习题答案:**

二、C++今日拓展内容:

✨✨​​​​​**拓展一:**

✨**实例一:**

✨✨**拓展二:**

✨**实例一:**

✨​​​​​​​✨​​​​​​​**拓展三:**

✨**实例一:**

✨**实例二:做个简陋的生日蛋糕:**

🏠​​​​​​​🏠​​​​​​​🏠**结语:**


一、今日习题以及答案

习题要求:

请编程计算下列给出的二维数组周边元素之和:

        1        3        5        7        9

        2        9        9        9        4

        6        9        9        9        8

        1        3        5        7        0

习题分析:

第一步、理解题意周边****元素之和就是红色部分的数字的和

        1        3        5        7        9

        2        9        9        9        4

        6        9        9        9        8

        1        3        5        7        0

第二步、找出周边元素在数组(假设数组为a[M][N];易知该二维数组为四行五列所以M = 4,N = 5)中的位置的规律然后进行依次相加求和

int i,j,sum = 0;
	for(i=0;i<M;i++)
		for(j=0;j<N;j++)
			if(i==0||i==M-1||j==0||j==N-1)
				sum = sum+a[i][j];

第三步、结合第一步和第二步编写代码

✨习题答案:

#include <iostream.h>
#include <iomanip.h>
#define M 4
#define N 5
int func(int a[M][N])//定义一个求二维数组周边元素之和的函数
{
	int i,j,sum = 0;
	for(i=0;i<M;i++)
		for(j=0;j<N;j++)
			if(i==0||i==M-1||j==0||j==N-1)
				sum = sum+a[i][j];
	return sum;
}
void main()
{
	int a[M][N] = {{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};
	int i,j,sum;
	cout<<"\n原始数据是:"<<endl;
	/*以下代码是打印出二维数组*/
	for(i=0;i<M;i++)
	{
		for(j=0;j<N;j++)
			cout<<setw(4)<<a[i][j];
			cout<<"\n";
	}
	sum = func(a);
	cout<<"\n二维数组1周边元素之和为:"<<endl;
	cout<<setw(4)<<sum<<endl;
}

以下是运行结果的图片:

二、C++今日拓展内容:

✨​​​​​​​✨​​​​​​​拓展一:

C++中system("pause")是什么作用和意思?

        system("pause")意思就是让程序暂停一下,然后按任意键继续,最多见于程序的末尾处,用于看运行结果,避免程序一闪而过。相同的我们还可以用getchar(),避免程序运行完直接结束而看不到运行结果。

注意:在VC 6.0下,要添加如下头文件否则代码会报错:

#include <stdlib.h>

实例一:

✨​​​​​​​✨​​​​​​​拓展二:

C++中****system("cls") 是什么作用和意思?

        当你编写的程序有输出的时候,如果要进行多次调试,屏幕上会显示很多次的输出的结果,看上去非常的复杂非常的乱。那么我们就可以在程序中的输出语句之前加上system("CLS");”,“当我们用上这条语句之后。这样每次程序运行的时候都会将上一次运行输出的内容给清除掉,屏幕上只显示本次输出的结果。这样看起来就非常的简洁。

注意:在VC 6.0下,要添加如下头文件否则代码会报错:

#include <stdlib.h>

实例一:

​编辑

✨​​​​​​​✨​​​​​​​拓展三:

C++中****system("color") 是什么作用和意思?

        如system("color 0A")或system("color D"),其中color后面的0是背景色代号,A是前景色代号。各颜色代号如下:

0 = 黑色       8 = 灰色
1 = 蓝色       9 = 淡蓝色
2 = 绿色       A = 淡绿色
3 = 湖蓝色     B = 淡浅绿色
4 = 红色       C = 淡红色
5 = 紫色       D = 淡紫色
6 = 黄色       E = 淡黄色
7 = 白色       F = 亮白色 

注意:在VC 6.0下,要添加如下头文件否则代码会报错:

#include <stdlib.h>

实例一:

✨实例二:做个简陋的生日蛋糕:

#include<iostream>
#include<windows.h>
#include<algorithm>
#include<cmath>
using namespace std;
int main(){
	while(1){
	system("color D");
	cout<<"    |_|_|_|_|"<<endl;
	cout<<" _|  生日快乐 |_"<<endl;
	cout<<"|_______________|";
	Sleep(1000);
	system("cls");
	system("color E");
	cout<<"   _|_|_|_|_|_"<<endl;
	cout<<" _| 生日快乐 |_"<<endl;
	cout<<"|_______________|";
	Sleep(1000);
	system("cls");
	system("color A");
	cout<<"   _|_|_|_|_|_"<<endl;
	cout<<" _| 生日快乐 |_"<<endl;
	cout<<"|_______________|";
	Sleep(1000);
	system("cls");
	system("color B");
	cout<<"   _|_|_|_|_|_"<<endl;
	cout<<" _| 生日快乐 |_"<<endl;
	cout<<"|_______________|";
	Sleep(1000);
	system("cls");
}
}

运行样图: