第一次写,好不容易,最基本的C++题目
来源:互联网 发布:软件开发公司口号 编辑:程序博客网 时间:2024/05/16 12:25
输出:1 2 3 4 型
12 13 14 5
11 16 15 6
10 9 8 7
#include<iostream>
using namespace std;
int main()
{
int m=0,k=0,j=1,n,i=0,row=0,col=0,flagr=0,flagc=1;
int *p;
cout<<"输入一个数n"<<endl;
cin>>n;
int q=0;
int w=n;
p=new int[n*n];
if(p==NULL)
{
cout<<"分配存储空间失败"<<endl;
exit (0);
}
for(;i<n*n;i++)
{
p[i]=0;
}
i=0;
if(n%2==0)
q=n/2;
else
q=n/2+1;
for(i=0;m<q;m++)
{
if(n<=1)
{ p[row*w+col]=i+1;
break;
}
for(;k<(n+(n-1)*2+n-2);i++,k++)
{
p[row*w+col]=i+1;
if((flagc==1)&&(flagr==0))
col++;
if((flagc==-1)&&(flagr==0))
col--;
if((flagr==1)&&(flagc==0))
row++;
if((flagr==-1)&&(flagc==0))
row--;
if(((row>=w-1-m)&&(col==w-1-m))||((row==w-1-m)&&(col>=w-1-m)))
{
flagr--;
flagc--;
}
if(((row<=m)&&(col==w-1-m))||((row==m)&&(col>=w-1-m)))
{
flagr++;
flagc--;
}
if(((row>=w-1-m)&&(col==m))||((row==w-1-m)&&(col<=m)))
{
flagr--;
flagc++;
}
}
k=0;
col=m+1;
row=m+1;
n=n-2;
flagr=0;
flagc=1;
}
cout<<" ";
for(i=0;i<w*w;i++)
{
cout<<p[i]<<" ";
cout.width (3);
if((i+1)%w==0)
{
cout<<endl<<endl;;
}
}
cout<<"伤不起啊!写了两天终于出来了!";
cout<<endl<<endl<<endl;
delete []p;
system("pause");
return 0;
}
- 第一次写,好不容易,最基本的C++题目
- 第一次写自己的blog--C语言基础题目--字母螺旋方阵
- hdu 1241 最基本的DFS题目
- 第一次写对C的感觉!
- 最基本题目
- 第一次写C语言
- c中最基本的
- 使用C#写最基本的五子棋
- 如何写一个最基本的编译器
- 【第一次发博客,写的不好见谅】git学习【基本】!!
- 第一次用c语言写的五子棋,求大神修改
- 第一次写C语言链表的增删改查
- 自己第一次c语言写的正方形代码
- 记第一次用C语言写代码的经历
- 【C#】最简单的写日志DEMO
- 第一次写的blog
- 第一次写的代码
- 第一次的写博客
- 用J2SE 1.4进行Internet安全编程(上)
- Yii框架添加FCKeditor
- 访问启动路径下文件几种方法
- b-tree索引和hash索引的区别
- 同头尾合十法
- 第一次写,好不容易,最基本的C++题目
- Windows文件格式大全
- Voreen-Build Instruction
- c/c++字符串处理大集合
- [原]SWFObject FAQ 使用swfobject以及flash的注意事项 中文翻译版
- TCP/IP协议族中不同层次的协议
- ddraw transparency (overlay 实现) 1
- RabbitMQ的安装,配置,监控
- ns packet