Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.80 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4. int rasen (int *S, int n, int m, int b,int i,int j,int k){
  5.     for(++j,++i;j<m-b;j++){
  6.         *(S+i*m+j)=k++;}
  7.     if(k>n*m) return 0;
  8.     for(++i,--j;i<n-b;i++){
  9.         *(S+i*m+j)=k++;}
  10.     if(k>n*m) return 0;
  11.     for(--j,--i;j>=0+b;j--){        
  12.         *(S+i*m+j)=k++;}
  13.     if(k>n*m) return 0;
  14.     for(--i,++j,++b;i>=0+b;i--){        
  15.         *(S+i*m+j)=k++;}
  16.     if(k<=n*m){rasen (S,n,m,b,i,j,k);}
  17.     return 0;}    
  18. int main (){
  19.     int *S,n,m,i,j;
  20.     S=(int*)calloc(n*m,sizeof(int));
  21.     printf("Input size of array\n");
  22.     scanf ("%d %d", &n, &m);
  23.     rasen (S,n,m,0,-1,-1,1);
  24.     for(i=0;i<n;i++){
  25.         printf("\n");
  26.         for(j=0;j<m;j++){
  27.             printf("%-4d",*(S+i*m+j));}}
  28.     getch();
  29.     return 0;}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement