2014秋C++第14周项目1参考-折腾二维数组-阿里云开发者社区

开发者社区> 贺利坚> 正文

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

简介: 课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目1-折腾二维数组】创建一个5行4列的二维整型数组,通过初始化,为数组中的前两列的10个元素赋初值,然后: 通过键盘输入,使后两列的10个元素获得值; 按行序优先输出数组元素; 将所有元素值
+关注继续查看
课程主页在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菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
2014秋C++第13周项目3参考-成绩处理函数版
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目3 - 成绩处理函数版】项目2的另一种实现。输入、求最大/小值等所有功能都通过自定义函数完成。这种设计貌似比项目2麻烦,但其结构有更多的优点,尤其是当程序的规模更大时。通过这个项目,学会将数组
840 0
2014秋C++第10周项目5参考-输出完数
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目5:输出完数】(课本p86第20题)一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3,再如8的因子和是7(即1+2+4),8不是完数。编程找出1000以内的所有完数。提
938 0
2014秋C++第13周项目4参考-数组的排序
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目4 - 数组的排序】(1)编写函数,完成冒泡排序,要求不能改变下面的main函数。 //两个函数bubble_sort和output_array的声明 int main( ) {
964 0
C++项目参考解答:求Fibonacci数列
【项目:求Fibonacci数列】   Fibonacci数列在计算科学、经济学等领域中广泛使用,其特点是:第一、二个数是1,从第3个数开始,每个数是其前两个数之和。据此,这个数列为:1 1 2 3 5 8 13 21 34 55 89 ……,请设计程序,输出这个数列,直到这个数字超过10000。   【提示】数列可以表示为: {f1=f2=1fn=fn−1+fn−2,
920 0
2014秋C++ 第14周项目 二维数组
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目1-折腾二维数组】创建一个5行4列的二维整型数组,通过初始化,为数组中的前两列的10个元素赋初值,然后: 通过键盘输入,使后两列的10个元素获得值; 按行序优先输出数组元素; 将所有元素值乘
1290 0
2014秋C++第11周项目1参考-函数版星号图
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目1-函数版星号图】这一组的练习意在通过调用函数输出星号图,体会与理解函数的工作过程,并为其后编制自定义函数实现特定功能。(1)补充完下面的程序,使程序输出星号图: #include &lt;
918 0
2014秋C++第14周项目1参考-折腾二维数组
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目1-折腾二维数组】创建一个5行4列的二维整型数组,通过初始化,为数组中的前两列的10个元素赋初值,然后: 通过键盘输入,使后两列的10个元素获得值; 按行序优先输出数组元素; 将所有元素值
990 0
Java数组排序基础算法,二维数组,排序时间计算,随机数产生
import java.util.Arrays; //包含Arrays import java.util.Random; public class HelloWorld { public static void main(String[] args){ // Scanner s = new Scanner(System.
854 0
C++项目参考解答-求最大公约数
【项目-求最大公约数】(1)输入两个数,并求出其最大公约数 #include &lt;iostream&gt; using namespace std; //自定义函数的原型(即函数声明) int main() { int a,b,g; cin&gt;&gt;a&gt;&gt;b; g=gcd(a,b); cout&lt;&lt;"最大公约数是: "&lt;&lt;g; re
880 0
+关注
贺利坚
烟台大学计算机学院教师,建设系列学习资源,改革教学方法,为IT菜鸟建跑道,让大一的孩子会编程,为迷茫的大学生出主意,一起追求快乐的大学。 著书《逆袭大学:传给IT学子的正能量》,帮助处于迷茫中的大学
1965
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载