CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

急急急....C++小程序..快啊..

楼主jackywang1(好好活着,要么去死)2005-06-02 10:43:28 在 C/C++ / C++ 语言 提问

编一个的程实现以下功能  
  提示拥护选择以下的菜单  
  0-退出  
  1-输入数组  
  2-移动行  
  3-输出数组  
  要求用函数移动行。  
  (注:数组为二维数组,移动行的含义:将数组上一行的数据移到下一行。最后一行的数据移到首行      
   
   
  哪位哥哥帮俺写写..反正用处大大地..俺C++不熟.. 问题点数:100、回复次数:12Top

1 楼mccxj(老鼠不逛街)回复于 2005-06-02 10:57:25 得分 2

if(求救==作业)   的确用处大大;  
  else   请耐心等候。。。Top

2 楼heartliubin(bin)回复于 2005-06-02 11:03:33 得分 2

循环移动,呵呵,找找吧,挺多的  
   
  也是学习的过程Top

3 楼jackywang1(好好活着,要么去死)回复于 2005-06-02 11:06:20 得分 0

我急啊..完事再加100分..君子一言四马也追不上!Top

4 楼runall(龙行天下)回复于 2005-06-02 11:11:21 得分 2

君子一言,什么马都难追  
  同情楼主Top

5 楼whatsouta(某疯子)回复于 2005-06-02 11:26:28 得分 2

问题本身不复杂,只是稍微有点麻烦而已,楼主就自己动一下手啦。Top

6 楼foochow(无聊,灌水......)回复于 2005-06-02 11:29:51 得分 2

mark!!自习去了,要考试了嘿嘿Top

7 楼cmoring(my study will go on)回复于 2005-06-02 11:29:54 得分 2

菜单?用VC或者BCB吧,单纯C++还是要依靠其它图形库的Top

8 楼hjcy_2002(hjcy)回复于 2005-06-02 11:33:20 得分 2

记录Top

9 楼mccxj(老鼠不逛街)回复于 2005-06-02 12:04:42 得分 80

#include   <iostream.h>  
  #include   <iomanip.h>  
   
  const   m=5;//数组行数  
  const   n=5;//数组列数  
   
  int   main(void)  
  {  
  int   i,j,k;//所选择的操作序号i  
  int   a[m][n];//数组  
  int   temp[n];  
  //进行初始化  
  for(j=0;j<m;j++)  
  for(k=0;k<n;k++)  
  {  
  a[j][k]=0;  
  }  
  select:  
  cout<<"0-退出"<<endl;  
  cout<<"1-输入数组"<<endl;  
  cout<<"2-移动行"<<endl;  
  cout<<"3-输出数组"<<endl;  
  cout<<"注意:数组默认初始化全为0!!"<<endl;  
  cout<<"请选择所要的功能(序号):"<<endl;  
  cin>>i;  
  switch(i)  
  {  
  case   0: cout<<"谢谢使用本系统!"<<endl;break;  
  case   1:   for   (j=0;j<m;j++)  
  for   (k=0;k<n;k++)  
  {  
  cout<<"请输入a["<<j<<"]["<<k<<"]:";  
  cin>>a[j][k];  
  }  
  goto   select;  
  case   2: for(i=0;i<n;i++)  
  temp[i]=a[m-1][i];  
          for(i=m-1;i>0;i--)  
  for(j=0;j<n;j++)  
  a[i][j]=a[i-1][j];  
  for(i=0;i<n;i++)  
  a[0][i]=temp[i];  
  goto   select;  
  case   3: for   (j=0;j<m;j++)  
  {  
  for   (k=0;k<n;k++)  
  {  
  cout<<setw(10)<<a[j][k];  
  }  
  cout<<endl;  
  }  
  break;  
  default:   cout<<"输入错误,请重新输入!!"<<endl;goto   select;  
  }  
  return   0;  
  }  
   
  随便弄了一下。。不过没有用到函数移动行。。你可以自己改。。而且由于时间关系。。所以用了goto,不过思路还是比较清晰的。。。Top

10 楼lbing7(向青润老大学习!!!)回复于 2005-06-02 12:26:36 得分 0

这样思路你看行不?  
   
  用二级指针申请动态的二维数组  
   
  在移行的时候,改改指针就OK了!  
   
  只能帮到这了!  
   
  再帮下去你就没事做了!Top

11 楼zjyu88(刚步入三流大学)回复于 2005-06-02 12:41:50 得分 6

lbing7说得方法不错,,做起来挺方便,移动指针比移动数据效率高。。  
  --------------------------------  
  to   lbing7:你是不是加了一个数据结构的群?你Q名叫:小lbing7(/?)Top

12 楼jackywang1(好好活着,要么去死)回复于 2005-06-02 15:44:31 得分 0

#include   <stdio.h>  
   
  int   a[3][3];  
   
  void   GetData()  
  {  
  for   (int   i   =   0;   i   <   3;   i++)  
  {  
  for   (int   j   =   0;   j   <   3;   j++)  
  {  
  printf("Input   a(%d,%d)的值:",   i,   j);  
  scanf("%d",   &a[i][j]);  
  }  
  }  
  }  
   
  void   MoveLine()  
  {  
  int   temp[3];  
  int   i,   j;  
   
  //保存最后一行数据  
  for   (j   =   0;   j   <   3;   j++)  
  {  
  temp[j]   =   a[2][j];  
  }  
   
  //从下向上换行  
  for   (i   =   2;   i   >   0;   i--)  
  {  
  for   (j   =   0;   j   <   3;   j++)  
  {  
  a[i][j]   =   a[i   -   1][j];  
  }  
  }  
  //将最后一行数据放到第一行  
  for   (j   =   0;   j   <   3;   j++)  
  {  
  a[0][j]   =   temp[j];  
  }  
  }  
   
  void   ListData()  
  {  
  for   (int   i   =   0;   i   <   3;   i++)  
  {  
  for   (int   j   =   0;   j   <   3;   j++)  
  {  
  printf("%10d",   a[i][j]);  
  }  
  printf("\n");  
  }  
  }  
   
  int   main(int   argc,   char*   argv[])  
  {  
  int   intSelect;  
   
  do   {  
  printf("\n请选择:\n\n0-退出\n1-输入数组\n2-移动行\n3-输出数组\n");  
  scanf("%d",   &intSelect);  
   
  switch(intSelect)  
  {  
  case   0:  
  break;  
  case   1:  
  GetData();  
  break;  
  case   2:  
  MoveLine();  
  break;  
  case   3:  
  ListData();  
  break;  
  default:  
  printf("输入错误\n\n");  
  }  
   
  }while(intSelect);  
   
  return   0;  
  }  
   
   
  唉..看了半中午C++的书..自己写的..记性这不好..以前的东西忘了差不多了..给分Top

相关问题

  • 各位网友:请大家编个小程序。(急急急!!!)
  • 做一个小程序,急!!!
  • 急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急
  • 急急急急急急急急急急~~~~~~~~~~~~~~~~~~~~~~~~~~~!!!!!!
  • 急急急急急急急急急急!
  • 急急急急急急急急急急!!!!!!!
  • 急!急!急!急!急!急!急!急!急!急!急!急!急!急!急!
  • 急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急,VB菜鸟问,急急急急急急急急急急急急急急急急急急急急急急急急急急急急
  • 急!急!急!急!急!急!急!
  • 急急急急急急急??????

关键词

  • 移动
  • 数组
  • 一行

得分解答快速导航

  • 帖主:jackywang1
  • mccxj
  • heartliubin
  • runall
  • whatsouta
  • foochow
  • cmoring
  • hjcy_2002
  • mccxj
  • zjyu88

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo