一个不是很简单的递归调用程序 怎么实现下面的图形:1、第一行友谊个星号,第二个有两个星号,以此类推,第n行由n个星号2、第n+1行有n个星号,第n+2行有n-1个星号,一直到2n行由1个星号规定用递归,那位哥们如果会的话,请会贴 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void main(String args[]) { printStar(1,5); } public static void printStar(int i,int n) { if(i>2*n) return; if(i<=n) { for(int k=0;k<i;k++) { System.out.print("*"); } System.out.println(); } else { for(int k=0;k<2*n-i+1;k++) { System.out.print("*"); } System.out.println(); } printStar(i+1,n); } import java.io.*;public class Test{private static int num=5;public static void main(String args[]){ printStart(num=5);}public static void printStart(int n){ if(n<=0) return; for(int i=0;i<=num-n;i++) System.out.print("*"); System.out.println(); printStart(n-1); for(int i=0;i<=num-n;i++) System.out.print("*"); System.out.println();}} public void printStart(int n, int i) { if (i > (2 * n)) return; int limit = 0; if (i > n) { limit = n - (i - n) + 1; } else { limit = i; } for (int j = 1; j <= limit; j++) { System.out.print("*"); } if(i!=0) System.out.println(); i++; printStart(n, i); } 我也是刚学java..但你哪个肯定不是虽然我不会。class sb{class printstar{void fact(int n){if(n>0)System.out.println("*");fact(n-1);}public void main(........){printstar ob=new printstar();ob.fact(N);........}} public static void main(String args[]){ printStar(1,5);}public static void printStar(int i,int n){ if(i>2*n) return; if(i<=n) { for(int k=0;k<i;k++) { System.out.print("*"); } System.out.println(); } else { for(int k=0;k<2*n-i+1;k++) { System.out.print("*"); } System.out.println(); } printStar(i+1,n);//递归}-------------------------------------------不会就不要乱叫.你看看是不是递归 -------------------------------------------------include <stdio.h>int KK=0;void starprint(int n ) { int i=0; if(n<1)return; for(;i<KK-n;i++) printf("*");printf("/n"); starprint(n-1); for(;i<KK-n;i++) printf("*"); printf("/n");}main(){ int n; scanf("%d",&n); KK=n; starprint(n);}-----------------------------------------------没调试,大家试下,行不???? daizhenbest(牛牛)那个不就是递归么? daizhenbest(牛牛)那个不是递归的精髓,写的不好 this.getHibernateTemplate().load时候报错nullpointerexception 超级新生菜鸟的问题,提示错误,找到不符号 单态设计模式的例子 求教:界面放大缩小的问题 socket的问题?怎样判断socket发出的字节已经完全读取完毕? 有没有在学JAVA的朋友交我这个朋友呀???? 急!关于线程的暂停,唤醒 请教,TOMCAT4中连接池怎样应用?数据库厂商连接池又如何应用? java父与子的问题 求教,如何用java实现以下功能? sos sos !!!!1求救 在线等待!!!急急 !! 布局管理器
{
printStar(1,5);
}
public static void printStar(int i,int n)
{
if(i>2*n)
return;
if(i<=n)
{
for(int k=0;k<i;k++)
{
System.out.print("*");
}
System.out.println();
}
else
{
for(int k=0;k<2*n-i+1;k++)
{
System.out.print("*");
}
System.out.println();
}
printStar(i+1,n);
}
public class Test{
private static int num=5;
public static void main(String args[])
{
printStart(num=5);
}
public static void printStart(int n)
{
if(n<=0) return;
for(int i=0;i<=num-n;i++)
System.out.print("*");
System.out.println();
printStart(n-1);
for(int i=0;i<=num-n;i++)
System.out.print("*");
System.out.println();
}
}
if (i > (2 * n))
return;
int limit = 0;
if (i > n) {
limit = n - (i - n) + 1;
} else {
limit = i;
}
for (int j = 1; j <= limit; j++) {
System.out.print("*");
}
if(i!=0)
System.out.println();
i++;
printStart(n, i);
}
虽然我不会。
class sb{
class printstar{
void fact(int n){
if(n>0)
System.out.println("*");
fact(n-1);
}
public void main(........){
printstar ob=new printstar();
ob.fact(N);
...
...
..
}
}
{
printStar(1,5);
}
public static void printStar(int i,int n)
{
if(i>2*n)
return;
if(i<=n)
{
for(int k=0;k<i;k++)
{
System.out.print("*");
}
System.out.println();
}
else
{
for(int k=0;k<2*n-i+1;k++)
{
System.out.print("*");
}
System.out.println();
}
printStar(i+1,n);//递归}
-------------------------------------------
不会就不要乱叫.你看看是不是递归
include <stdio.h>
int KK=0;
void starprint(int n ) {
int i=0;
if(n<1)return;
for(;i<KK-n;i++) printf("*");printf("/n");
starprint(n-1);
for(;i<KK-n;i++) printf("*"); printf("/n");
}main()
{
int n;
scanf("%d",&n);
KK=n;
starprint(n);
}
-----------------------------------------------
没调试,大家试下,行不????