如何打印一个n行的空心菱形,c语言实现

在最开始写的时候,建议把空格部分换成其他符号,方便观察
输入n就打印一个n行的空心菱形

#include<stdio.h>
int main(){
    
    
	int n,i,j,k,p,q;
	scanf("%d",&n);
	for(i = 1; i <= n/2 + 1; i ++){
    
    
		for( j = i; j < n/2 + 1; j ++ ){
    
    
			printf("  ");
		}
		printf("*");
		for( k = 1;k < i; k++){
    
    
			printf("    ");
			if(k == i-1){
    
    
				printf("*");
			}
		} 
		printf("\n");
	}
	for(i = 1; i <= n / 2; i ++){
    
    
		for( p = 0; p < i; p ++ ){
    
    
			printf("  ");
		}
		printf("*");
		for( q = n / 2 ;q > i; q--){
    
    
			printf("     ");
			if(q == i+1){
    
    
				printf("*");
			}
		} 
		printf("\n");
	}
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/weixin_50948265/article/details/115478266