学了2天的C语言,编的一个输出*的程序,请大家多多指导
#include <math.h>#include <stdio.h>
int print_stars(int num);
int print_spaces(int num);
int main()
{
int i, j;
int n, m;
begin:
printf("input:\n");
scanf("%d", &n); //n = 5
if (n < 0 || n % 2 == 0)
{
printf("error, exit\n");
return -1;
}
getchar();
for (i = 1; i <= (n + 1) / 2; i++)
{
print_spaces((n + 1) / 2 - i);
print_stars(i);
}
for (i = (n + 1) / 2 - 1; i >= 1; i--)
{
print_spaces((n + 1) / 2 - i);
print_stars(i);
}
getchar();
goto begin;
}
int print_stars(int num)
{
int i;
for (i=1; i<=num; i++)
{
printf("* ");
}
printf("\n");
}
int print_spaces(int num)
{
int i;
for (i=1; i<=num; i++)
{
printf(" ");
}
} 还不太懂~~刚又学开始学C!! 什么问题啊?你实现的功能是啥,谁有时候在研究你这个啊,直接说做的过程中遇到的问题,或者你是想问你的程序是最优的吗,还是想干嘛???? 回复 3# xuehai111111
楼上正解 额。。真够厉害的。才学两天就弄这么长的。。。 用goto,程序不稳定的. 看的c语言书真够老的
页:
[1]