第1个回答 2012-04-14
#include<stdio.h>
int main()
{
int n,max=0;
while(scanf("%d",&n),n!=0)
{
if(max<n)
{
max=n;
}
}
printf("%d\n",max);
return 0;
}
#include <stdio.h>
#include <math.h>
int main()
{
int n,i,j;
scanf("%d",&n);
for(i=-(n-1);i<n;++i)
{
for(j=0;j<2*n-1-abs(i);++j)
{
if(j<abs(i))
printf("\040");
else
printf("*");
}
printf("\n");
}
return 0;
}
第2个回答 2012-04-14
这是以前编好的
#include<iostream>
using namespace std;
void main()
{
int i,j,k,n;
cout<<"请输入你的边长n(为几颗星?奇数):";
cin>>n;
for(i=1;i<=n;i++)
{
if(i<=(n+1)/2)
{
for(j=i;j<(n+1)/2;j++)
{
cout<<' ';
}
for(k=0;k<2*i-1;k++)
{
cout<<'*';
}
}
if(i>(n+1)/2)
{
for(j=(n+1)/2;j<i;j++)
{
cout<<' ';
}
for(k=0;k<2*(n-i)+1;k++)
{
cout<<'*';
}
}
cout<<endl;
}
}
第3个回答 2012-04-14
#include <stdio.h>
#define N 500
int main()
{
int n, i, q = 0,j;/* i为行数,j为列数,q为总行书及最大列数*/
char a[N];
printf("please enter a num for n:\n");
scanf("%d",&n);
q = n * 2;
for(i = 0; i < q; i++)
{
for(j = 0; j < q; j++)
{
/* 初始化为空格 */
a[j] = ' '; //忘记这样赋值对不对了,单个char很少用了
}
if(i < n)
{
for(j = 0; j < q; j++)
{
if (j > (n - i - 1) && j < (n + i + 1))
a[j] = '*';
}
}
else
{
for(j = 0; j < q; j++)
{
if (j > ( i - n + 1) && j < (3 * n - i - 1))
a[j] = '*';
}
}
for(j = 0; j < q; j++)
printf("%c",a[j]);
printf("\n");
}
return 1;
}
编了一个最老实的,简便方法自己开发吧。