课程主页在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