又是对题目迷茫的一天……
如何才能输出图中的亚子nia{:10_266:} …… 两层循环可以实现 两个循环,一个控制数字和行数,一个控制数量 昨天的帖子和这个很像啊!一点也不想思考么?
那就给你写一个吧
#include <stdio.h>
intmain()
{
int i,j,k;
for(i=1;i<=9;i++){
if(i<=5){
for (j=0;j<5-i;j++) //输出前面的空格
printf(" ");
for(j=0;j<2*i-1;j++) //输出数字
printf("%d",i);
}
else{
for (j=0;j<i-5;j++) //输出前面的空格
printf(" ");
for(j=0;j<2*(9-i)+1;j++) //输出数字
printf("%d",i);
}
printf("\n"); //回车换行,准备打印下一行
}
return 0;
} sunrise085 发表于 2020-4-4 20:11
昨天的帖子和这个很像啊!
一点也不想思考么?
那就给你写一个吧
蟹蟹解答啦,没有啦,我昨天那个自己写的时候输出的就是这样一个菱形,然后和题目的两个三角不一样,然后今天这个我是没有想到怎么输出这样的数字{:10_266:} sunrise085 发表于 2020-4-4 20:11
昨天的帖子和这个很像啊!
一点也不想思考么?
那就给你写一个吧
代码行数多哈哈
https://fishc.com.cn/thread-163935-1-1.html wp231957 发表于 2020-4-4 21:07
代码行数多哈哈
https://fishc.com.cn/thread-163935-1-1.html
是的。
人家用的是C语言。 sunrise085 发表于 2020-4-4 21:15
是的。
人家用的是C语言。
c也一样啊,可以把else后面的并到前面,就会省大约一半的代码,不过楼主估计会懵 wp231957 发表于 2020-4-4 21:18
c也一样啊,可以把else后面的并到前面,就会省大约一半的代码,不过楼主估计会懵
当然可以啦~
这个写法楼主都想不出来,估计合并后,楼主更懵了。
#include <stdio.h>
intmain()
{
int i,j,k;
for(i=1;i<=9;i++){
for (j=0;j<abs(5-i);j++) //输出前面的空格
printf(" ");
for(j=0;j<(9-2*abs(5-i));j++) //输出数字
printf("%d",i);
printf("\n"); //回车换行,准备打印下一行
}
return 0;
}
页:
[1]