首页 > 其他分享 >C语言:蛇形方阵

C语言:蛇形方阵

时间:2022-11-18 12:12:02浏览次数:55  
标签:10 int C语言 -- while 蛇形 方阵

题目

给出一个不大于 9 的正整数 n,输出 n×n 的蛇形方阵。从右上角填上 1 开始,逆时针方向依次填入数字,如同样例所示。注意每个数字都右对齐,中间用空格隔开。

 例如:
  输入:4
  输出:
     4 3 2 1
     5 14 13 12
     6 15 16 11
     7 8 9 10


代码


#include<stdio.h>

int main(){
	int n,i,j;
	int k=0;
	scanf("%d",&n);	
	int a[10][10];
	int x=1,y=0; 

	for(i=1;i<=n;i++){
		for(j=n;j>=1;j--){
			a[i][j] = 0;
		} 	
	}  
	while( k < n*n){
		 
		while(y<n&&a[x][y+1]==0){  
			a[x][++y] = ++k;
		}	
		
		while(x<n&&a[x+1][y]==0){ 
			a[++x][y] = ++k;
		}
		
		while(y>1&&a[x][y-1]==0){
			a[x][--y] = ++k;
		}
		
		while(x>1&&a[x-1][y]==0){
			a[--x][y] = ++k;
		}
	}

	for(i = 1; i<= n; i++){
		for(j = n; j >= 1; j--){
			printf("%3d",a[i][j]); 
		} 
		printf("\n"); 
	}  
	return 0;
} 

标签:10,int,C语言,--,while,蛇形,方阵
From: https://www.cnblogs.com/Shin404/p/16902779.html

相关文章

  • C语言:连续子串
    题目输入一个字符串,输出其所有的子串(不包含本身,输出每个子串间有空格)。子串:对于一个字符串变量,例如"adereegfbw",它的子串就是像"ader"这样可以从中找到的连续的字符......
  • C语言:规则排序
    题目输入正整数n,再输入n个正整数,先将其中的奇数从小到大排序,再将偶数从大到小排序。 例如:  输入:828522391125  输出:35911252282代码#in......
  • C语言:亲密数对
    题目输入N,N在2至3000之间,求2至N中的亲密数对。所谓亲密数对,就是A的因子和等于B,B的因子和等于A,且A≠B。如48和75是亲密数对。48的因子和为2+3+4+6......
  • C语言:学号输出
    题目用输出你的学号对应的八位数(每位数大小为55,每个数之间距离三个空格) 例如  输入12345678 输出: 代码#include<stdio.h>intmain(){charinp......
  • C语言:一元二次方程求解
    题目已知一元二次方程......
  • C语言:时间计算
    题目给出当前时间(XX时XX分XX秒),计算经过n秒后的时间,输出格式(XX时XX分XX秒,注意0的补位),超过24时则显示第二天的时间。 例如:  输入:09时11分22秒125秒  输出:09时13......
  • 计算机等级考试二级C语言程序设计专项训练题——程序设计题(四)
    31、请编写函数voidfun(charxx[]),函数的功能是:将字符串数组xx中下标为奇数的字符按其ASCII值从大到小的顺序进行排序。例如:源字符串为:abcdefgh,则处理后字符串为:ahcfedgb......
  • C语言交通查询系统
    C语言交通查询系统数据结构实验周任务书1.设计目的:数据结构实验周课程设计旨在培养学生运用数据结构的相关知识和理论解决计算机建模的能力,具备良好的数据结构建模的思想......
  • C语言运动会分数统计程序
    C语言运动会分数统计程序运动会分数统计程序的设计(2人)运动会分数统计任务:参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1…......
  • LeetCode刷题(6)【栈】有效的括号(C语言)
    有效的括号20.有效的括号-力扣(LeetCode)(leetcode-cn.com)​思路:是左括号,就入栈,是右括号,就与栈顶的左括号判断是否匹配,如果匹配,继续,不匹配就终止。从第79行开始,前面都是......