2014秋C++第14周项目1参考-折腾二维数组

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 

【项目1-折腾二维数组】
创建一个5行4列的二维整型数组,通过初始化,为数组中的前两列的10个元素赋初值,然后:

  • 通过键盘输入,使后两列的10个元素获得值;
  • 按行序优先输出数组元素;
  • 将所有元素值乘以3后保存在数组中;
  • 按列序优先输出(输出的第一行是数组中的第一列……,其实输出的就是“转置”);
  • 将数组“倒”着输出(即最后一行最后一列的最先输出,第0行第0列的最后输出);
  • 输出数组中的所有偶数;
  • 输出所有行列下标之和为3的倍数的元素值。

    提示:编程时,可以做一点,调一点。参考的运行界面如图:

#include <iostream>
using namespace std;
int main( )
{
    int i,j;
    //创建数组,为数组中的前两列的10个元素赋初值
    int a[5][4]= {{0,1},{4,5},{8,9},{12,13},{16,17}};

    //键盘输入后两列10个元素的值
    cout<<"请输入10个整数:"<<endl;

    //按行序优先输出
    cout<<"数组中的值为:"<<endl;

    //将所有元素值乘以3后保存在数组中
    cout<<"现在将所有元素乘以3倍...";

    //按行序优先输出
    cout<<"行序优先输出:"<<endl;

    //按列序优先输出(见题目描述)
    cout<<"列序优先输出:"<<endl;

    //将数组“倒”着输出(见题目描述)
    cout<<"倒着输出:"<<endl;

    //输出数组中的所有偶数
    cout<<"数组中的偶数:"<<endl;

    //输出所有行列下标之和为3的倍数的元素值
    cout<<"行列下标之和为3的倍数的元素:"<<endl;

    return 0;
}

参考解答:

#include <iostream>
using namespace std;
int main( )
{
	int i,j;
        //创建5行4列的二维整型数组,为数组中的前两列的10个元素赋初值
	int a[5][4]={{0,1},{4,5},{8,9},{12,13},{16,17}}; 

	//键盘输入使后两列10个元素的值
	cout<<"请输入10个整数:"<<endl;
	for(i=0;i<5;++i)
		for(j=2;j<4;++j)
			cin>>a[i][j];

	//按行序优先输出
	cout<<"数组中的值为:"<<endl;
	for(i=0;i<5;++i)   //i行号
	{
		cout<<"第"<<i<<"行: ";
		for(j=0;j<4;++j)    //j列号
			cout<<a[i][j]<<'\t';
		cout<<'\n';
	}

	//将所有元素值乘以3后保存在数组中
	cout<<"现在将所有元素乘以3倍...";
	for(i=0;i<5;++i)
		for(j=0;j<4;++j)
			a[i][j]*=3;
	cout<<"完成!"<<endl;

	//按行序优先输出
	cout<<"行序优先输出:"<<endl;
	for(i=0;i<5;++i)   //i行号
	{
		cout<<"第"<<i<<"行: ";
		for(j=0;j<4;++j)    //j列号
			cout<<a[i][j]<<'\t';
		cout<<'\n';
	}

	//按列序优先输出(输出的第一行是数组中的第一列……,其实输出的就是“转置”)
	cout<<"列序优先输出:"<<endl;
	for(i=0;i<4;++i)  //i列号
	{
		cout<<"第"<<i<<"列: ";
		for(j=0;j<5;++j)   //j行号
			cout<<a[j][i]<<'\t';
		cout<<'\n';
	}

	//将数组“倒”着输出(即最后一行最后一列的最先输出,第0行第0列的最后输出)
	cout<<"倒着输出:"<<endl;
	for(i=4;i>=0;--i)   //i行号
	{
		cout<<"第"<<i<<"行: ";
		for(j=3;j>=0;--j)    //j列号
			cout<<a[i][j]<<'\t';
		cout<<'\n';
	}

	//输出数组中的所有偶数
	cout<<"数组中的偶数:"<<endl;
	for(i=0;i<5;++i)   //i行号
	{
		for(j=0;j<4;++j)    //j列号
			if(0==a[i][j]%2)
				cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<'\n';
	}

	//输出所有行列下标之和为3的倍数的元素值
	cout<<"行列下标之和为3的倍数的元素:"<<endl;
	for(i=0;i<5;++i)   //i行号
	{
		for(j=0;j<4;++j)    //j列号
			if(0==(i+j)%3)
				cout<<"a["<<i<<"]["<<j<<"]="<<a[i][j]<<'\n';
	}
	return 0;
}
=================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====
时间: 2024-12-23 03:22:57

2014秋C++第14周项目1参考-折腾二维数组的相关文章

2014秋C++第14周项目5参考-体会棋盘游戏

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目5-体会棋盘游戏中的数据存储]定义一个8行8列的二维数组a[8][8].(1)为二维数组中的数据赋50以内的随机数(程序模板中setdata()函数已经完成,利用产生随机数的系统函数实现),可能的取值如图所示:(2)设计函数out()按行输出二维数组中的数据:(3)设计函数outDia

2014秋C++第14周项目3参考-多科成绩单

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目3-多科成绩单]某班不超过100名同学.用二维数组score[][4]保存同学们的高数.英语.C++成绩及总成绩(在此假设学生的学号为整型的连续值,用数组的行下标作学号).在此基础上,完成下面的操作:(1)输入学生的实际人数num,在输入各科的成绩时,输入3科成绩后可以自动求出总分,并

2014秋C++第14周项目4参考-电子词典

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目4-电子词典]做一个简单的电子词典.在文件dictionary.txt中,保存的是英汉对照的一个词典,词汇量近8000个,英文与释义间用'\t'隔开.编程序,将文件中的内容读到两个数组e[]和c[]中,分别代表英文和中文,由用户输入英文词,显示中文意思.运行程序后,支持用户连续地查词典

2014秋C++第14周项目2参考-带姓名的成绩单

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目2-带姓名的成绩单]设score[8]数组中存储8名同学的C++成绩,增加一个数组string name[8]并赋初值,表示同学们的姓名.这两个数组中,每名同学的姓名与成绩的下标要始终保持一致(例如name[i]和score[i]表示同一位同学(下标为i)的姓名和C++成绩,否则会张冠

2014秋C++ 第14周项目 二维数组

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目1-折腾二维数组]创建一个5行4列的二维整型数组,通过初始化,为数组中的前两列的10个元素赋初值,然后: 通过键盘输入,使后两列的10个元素获得值: 按行序优先输出数组元素: 将所有元素值乘以3后保存在数组中: 按列序优先输出(输出的第一行是数组中的第一列--,其实输出的就是"

2014秋C++第17周 项目4参考 日期结构体

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目4 - 日期结构体](1)定义一个结构体变量(包括年.月.日),要求输入年.月.日,计算输出该日是该年的第几天. #include <iostream> using namespace std; struct Date { int year; int month; int

2014秋C++第5周项目3参考-简单分支问题体验

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,实践要求见http://blog.csdn.net/sxhelijian/article/details/39493833. 课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看. [项目3-简单分支问题体验]至少选择(1)-(3)中的一个完成体验,小组共同完成(4) 阅读课件中"给两个数,求两数中的大者"例子(见课件),结合对

2014秋C++第16周 项目1参考 数组的排序

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目1-数组的排序]按给定部分程序的要求,用指向数组的指针变量作为形式参数编写函数,完成排序.重点体会:(1)排序算法,可以是冒泡,也可以是选择:(2)用指向数组的指针变量作为形式参数,用数组名(即数组的地址)作为实际参数,函数中对于形参的改变实质上也就是对实参对应内存单元的改变:(3)形

2014秋C++第13周项目4参考-数组的排序

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目4 - 数组的排序](1)编写函数,完成冒泡排序,要求不能改变下面的main函数. //两个函数bubble_sort和output_array的声明 int main( ) { int a[20]={86,76,62,58,77,85,92,80,96,88,77,67,80,68,