C语言,已知一个正整数n,输出n阶的实心菱形
输入一个正整数n(要输出菱形的阶数),输出n阶实心菱形(占2n-1行)。例如输入3,打印结果如下。*************别只发程序,在程序后面请注释为什么这么作。在线...
输入一个正整数n(要输出菱形的阶数),输出n阶实心菱形(占2n-1行)。
例如输入3,打印结果如下。
*
***
*****
***
*
别只发程序,在程序后面请注释为什么这么作。
在线等,求速度,求大神~!! 展开
例如输入3,打印结果如下。
*
***
*****
***
*
别只发程序,在程序后面请注释为什么这么作。
在线等,求速度,求大神~!! 展开
3个回答
展开全部
#include<stdio.h>
int main(void)
{
int i,n,z,m,k,l;
scanf("%d",&n);
for(i=0;i<n;++i) //这个循环是设置上面的图形,设置i控制行数 ,输出n行
{
for(k=0;k<n-i;k++) //设置每一行输出空格的个数,可以看出是输入的数字-行数
printf(" ");
for(l=0;l<=i;l++) //同理 设置输出*的个数
printf("* ");
printf("\n"); //执行换行
}
for(i=n-1;i>=0;i--) //设置下面图形 比上面少了一行 所以是 n-1
{
for(k=0;k<n-i;k++) //同样设置空格
printf(" ");
for(l=0;l<=i;l++) //同样设置*的数目
printf("* ");
printf("\n"); //同样 换行
}
return 0;
}
应该可以看懂了 不懂再问吧 嘿嘿
int main(void)
{
int i,n,z,m,k,l;
scanf("%d",&n);
for(i=0;i<n;++i) //这个循环是设置上面的图形,设置i控制行数 ,输出n行
{
for(k=0;k<n-i;k++) //设置每一行输出空格的个数,可以看出是输入的数字-行数
printf(" ");
for(l=0;l<=i;l++) //同理 设置输出*的个数
printf("* ");
printf("\n"); //执行换行
}
for(i=n-1;i>=0;i--) //设置下面图形 比上面少了一行 所以是 n-1
{
for(k=0;k<n-i;k++) //同样设置空格
printf(" ");
for(l=0;l<=i;l++) //同样设置*的数目
printf("* ");
printf("\n"); //同样 换行
}
return 0;
}
应该可以看懂了 不懂再问吧 嘿嘿
展开全部
#include <stdio.h>
int main()
{
int i, j, n;
printf("请输入n: ");
scanf("%d", &n);
/*
* 以下注释假设n=3进行分析
*/
// 菱形上半部
for (i=0; i<n; i++) {
for (j=0; j<n-i-1; j++) { //左边的空格, 2-1-0递减
printf(" ");
}
for (j=0; j<2*i+1; j++) { //右边的星号, 1-3-5递增
printf("*");
}
printf("\n"); //下一行
}
// 菱形下半部
for (i=1; i<n; i++) {
for (j=0; j<i; j++) { //左边的空格, 1-2递增
printf(" ");
}
for (j=0; j<2*(n-i)-1; j++) { //右边的星号, 3-1递减
printf("*");
}
printf("\n"); //下一行
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-30
展开全部
/*菱形星号组成,我才发现我没做过*/
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int i,n;
char *str=NULL;
/*定义一个活动长度的字符串*/
scanf("%d",&n);
/*输入n*/
str=(char*)malloc(sizeof(char)*(2*n));
/*为字符串设定长度*/
for(i=0;i<2*n-1;i++)
str[i]='*';
str[i]='\0';
/*为字符串付值,是一串星号,长度是2n-1*/
for(i=1;i<=2*n-1;i++)
printf("%*.*s\n",i<=n?n+i:n*3-i,i<=n?i*2-1:n*4-i*2-1,str);
/*用格式输出控制输出*/
free(str);
/*释放指针*/
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询