int pdata=1; void rprint(int n,int m){ int i; for(i=1;i<=n;i++){printf(" ");} for(i=1;i<=m;i++){printf("%d",pdata);pdata=(pdata+2)%10;} printf("\n"); if(n>0){ rprint(n-1,m+2); for(i=1;i<=n;i++){printf(" ");} for(i=1;i<=m;i++){printf("%d",pdata);pdata=(pdata+2)%10;} printf("\n"); } } int main(void){ int base; printf("input a odd number:\n"); scanf("%d",&base); printf("-------------------\n"); rprint(base/2,1); }
FOR(XXX){ FOR(XXX) if(XXX) printf("*"); else printf(" ");}這是將迴圈寫在一起(一個迴圈也可以)....主要列印的條件在判斷式的寫法......或是用...如果你是用....FOR(XXX) <-我是上層{ if(XXX) printf("*"); else printf(" ");}FOR(XXX) ....;<-中間再一層FOR(XXX)<-我是下層{ if(XXX) printf("*"); else printf(" ");}
#include "stdafx.h"#include "iostream"int _tmain(int argc, _TCHAR* argv[]){ int i,j,k,x; std::cout <<"請輸入*個數"; std::cin >>x;for(j=0;j<=x*2-2;j++){ for(i=1;i<=x;i++) { if(j<=x-1) { if(i<x-j) std::cout<<" "; else std::cout<<"*" <<" "; } else { if(i<=j-x+1) std::cout<<" "; else std::cout<<"*" <<" "; } } std::cout<<"\n";}system("pause"); return 0;}