基于visual Studio2013解决C语言竞赛题之1067间隔排序







题目


解决代码及点评

 
 
 
 
/*
功能:间隔元素排序。用随机函数产生25个[25,75]之间的整数, 把它送到一维数组M中。
      要求对M[I],M[I+J],M[I+2*J],…这些元素按从小到大的顺序排序。
	  J的值由键盘输入,I从1到J变化。实际上是以J为间隔排了J个对列,每个对列中从小到大排序。

 
时间:3:03 2013/10/26
*/

#include<stdio.h>
#include <stdlib.h>
#include <time.h>
void main()
{
	time_t t;
	srand((unsigned)time(&t));			//随机函数发生器
	int a[25];
	for(int i=0;i<25;i++)
	{
		a[i]=rand()%50+25;//用随机函数产生25个[25,75]之间的整数,存入数组中
		if(i%5==0)printf("\n");
		printf("%3d",a[i]);
	}

	printf("\n\n");
	int j;
	scanf_s("%d",&j);
	for(int i=0;i<=j;i++)
	{
	for(int k=i;k<25;k+=j)
		{
			if(k+j<25)
			{
				for (int t=k+j;t<25;t+=j)
				{
					if(a[k]>a[t])
					{
						a[k]=a[k]+a[t];
						a[t]=a[k]-a[t];
						a[k]=a[k]-a[t];
					}
				}
			}
		}
	}

	printf("\n\n");
	for(int i=0;i<25;i++)
	{
		if(i%5==0)printf("\n");
		printf("%3d",a[i]);
	}
	system("pause");
}



代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

2)选择工程

3)创建完工程如下图:

4)增加文件,右键点击项目

5)在弹出菜单里做以下选择

6)添加文件

7)拷贝代码与运行


程序运行结果


代码下载

http://download.csdn.net/detail/yincheng01/6681845

解压密码:c.itcast.cn







转载于:https://www.cnblogs.com/new0801/p/6177417.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值