重新改了下,记得给分!
#include<stdio.h>
#include<string>
int Judge(int floor)
{char str[10];
gets(str);
if(strlen(str)==0)floor=4;
if((strlen(str)==2)&&(strcmp(str,"10")==0))floor=10;
if(((strlen(str)==2)&&(strcmp(str,"11")>=0))||(strlen(str)>=3))floor=11;
if(strlen(str)==1)floor=(int)str[0]-48;
return floor;
}
void main()
{
int i,j,k;
int floor;
while(1)
{printf("请输入层数:\n");
k=Judge(floor);
if(k<3)
{
printf("层数太小,法老住不下!\n ");
continue;
}
if(k>10)
{printf("太高了,没那么多钱!\n ");
continue;
}
for(i=1;i<=k;i++)
{
for(j=1;j<=k-i;j++)
{
printf(" ");
}
for(int k=2*i-1;k>0;k--)
{
printf("*");
}
printf("\n");
}
break;
}
}
[
本帖最后由 hziee 于 2010-4-4 16:24 编辑 ]