您好,登錄后才能下訂單哦!
//
// main.c
// test2
//
// Created by 丁小未 on 13-7-14.
// Copyright (c) 2013年 dingxiaowei. All rights reserved.
//
//蛇形函數(shù)問題
#include<stdio.h>
#include<string.h>
void main()
{
int i = 0,n,k = 1;
printf("請輸入N:");
scanf("%d",&n); //
int j = n-1,s[100][100];
memset(s,0,sizeof(s)); //內(nèi)存初始化
while(k<=n*n)
{
while(i<=n-1&&s[i][j]==0&&k<=n*n) {s[i++][j] = k++;}
i--;//不然的話上面一行i++之后越過邊界了
j--;//不然會覆蓋邊角的那個數(shù)
while(j>=0&&s[i][j]==0&&k<=n*n) {s[i][j--] = k++;}
j++;
i--;
while(i>=0&&s[i][j]==0&&k<=n*n) {s[i--][j] = k++;}
i++;
j++;
while(j<=n-1&&s[i][j]==0&&k<=n*n) {s[i][j++] = k++;}
i++;
j--;
}
//打印輸出
for(int x = 0;x<n;x++)
{
for(int y = 0;y<n;y++)
{
if(s[x][y]<10)
printf("%d ",s[x][y]);
else
printf("%d ",s[x][y]);
}
printf("\n");
}
}
結(jié)果:
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。