先来打印九九乘法表吧,相对而言,这个稍微简单一点
int main()
{
int i,j;
for( i=1;i<=9;i++){
for( j=1;j<=i;j++){
printf("%d*%d =%-2d ",i,j,i*j);
}
printf("\n");
}
}
接下来就来做正三角的打印吧一步步的来,最后才是漏斗的打印
#include <stdio.h>
int main(){
int i,j,n;//n为多少行
scanf("%d",&n);
int blank=n-1;
for(i=1;i<=n;i++){
for(j=0;j<blank;j++){
printf(" ");
}
blank--;
for(j=1;j<=i;j++){
printf("* ");
}
printf("\n");
}
return 0;
}
接下里就是倒正三角的打印喽
#include <stdio.h>
int main(){
int i,j,n;//n为多少行
scanf("%d",&n);
int blank=0;
for(i=n;i>0;i--){
for(j=0;j<blank;j++){
printf(" ");
}
blank++;
for(j=0;j<i;j++){
printf("* ");
}
printf("\n");
}
return 0;
}
现在就来打印漏斗吧
int main(){
int sum=1,ans=0,index=1;
int n;
scanf("%d",&n);
while(sum<n){
index++;
sum+=(2*index-1)*2;
}
if(sum==n){
ans=0;
}
else{
sum-=(2*index-1)*2;
index--;
ans=n-sum;
}
int blank=0;
for(int i=index;i>0;i--){
for(int j=0;j<blank;j++){
printf(" ");
}
blank++;
for(int j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
blank-=2;
for(int i=2;i<=index;i++){
for(int j=0;j<blank;j++){
printf(" ");
}
blank--;
for(int j=1;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
printf("%d",ans);
return 0;
}