栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

[C++]编写程序,从键盘任意输入两个字符,能让它们按由大到小输出。要求程序有一个交换两个字符的函数,形参是变量的引用。

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[C++]编写程序,从键盘任意输入两个字符,能让它们按由大到小输出。要求程序有一个交换两个字符的函数,形参是变量的引用。

循环左移方法如下所示。在这个实例中k=3。 (本题中n为5)

如果循环左移前,A中存放的内容是:

11  12  13  14  15

21  22  23  24  25

31  32  33  34  35

41  42  43  44  45

51  52  53  54  55

则循环左移后,A中存放的内容变成:

14  15  21  22  23

24  25  31  32  33

34  35  41  42  43

44  45  51  52  53

54  55  11  12  13

测试用例:

输入:

3

11 12 13 14 15

21 22 23 24 25

31 32 33 34 35

41 42 43 44 45

51 52 53 54 55

输出:

左移3位后的数组为:

14      15      21      22      23

24      25      31      32      33

34      35      41      42      43

44      45      51      52      53

54      55      11      12      13

4

11 12 13 14 15

21 22 23 24 25

31 32 33 34 35

41 42 43 44 45

51 52 53 54 55

左移4位后的数组为:

15      21      22      23      24

25      31      32      33      34

35      41      42      43      44

45      51      52      53      54

55      11      12      13      14

2

15 16 17 18 19

25 26 27 28 29

35 36 37 38 39

45 46 47 48 49

55 56 57 58 59

左移2位后的数组为:

17      18      19      25      26

27      28      29      35      36

37      38      39      45      46

47      48      49      55      56

57      58      59      15      16

#include 
using namespace std;
int main()
{
	int a[5][5],i,j,k,t,s;
	cin>>k;
	for(i=0;i<5;i++)
		for(j=0;j<5;j++)
		   cin>>*(*(a+i)+j);
	if(k>1&&k<5)
	{
		for(s=1;s<=k;s++)
		{
			t=a[0][0];
			for(i=0;i<5;i++)
				for(j=0;j<5;j++)
				{
					if(j!=4)
						*(*(a+i)+j)=*(*(a+i)+j+1);
					else
						*(*(a+i)+j)=*(*(a+i+1)+0);
				}
			a[4][4]=t;
		}
	}
	cout<<"左移"< 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/917100.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号