杨辉三角

杨辉三角

时间: 1ms        内存:64M

描述:

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
上面的图形熟悉吗?它就是我们中学时候学过的杨辉三角。

输入:

输入数据包含多组测试数据。 每组测试数据的输入只有一个正整数n(1≤n≤30),表示将要输出的杨辉三角的层数。 输入以0结束

输出:

对应于每一个输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开,每一个杨辉三角后面加一个空行。

示例输入:

2
3
0

示例输出:

1
1 1

1
1 1
1 2 1

提示:

参考答案(内存最优[748]):

#include <stdio.h>
  struct Student
    {
        char num[203];
        char name[20];
        int score[3];
    };
int main()
{
    int y;
    void input(struct Student  stu1[],int x);
    void output(struct Student stu[],int x);
    struct Student stu[100],*p=stu;
    scanf("%d",&y);
    input(p,y);
    output(p,y);
    return 0;
}
void input(struct Student stu[],int x)
 {
    int i;
    for(i=0;i<x;i++)
    scanf("%s%s%d%d%d",stu[i].num,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);

 }
void output(struct Student stu[],int x)
    {
        int i;
        for(i=0;i<x;i++)
        printf("%s,%s,%d,%d,%d\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    }

参考答案(时间最优[0]):

#include <stdio.h>
  struct Student
    {
        char num[203];
        char name[20];
        int score[3];
    };
int main()
{
    int y;
    void input(struct Student  stu1[],int x);
    void output(struct Student stu[],int x);
    struct Student stu[100],*p=stu;
    scanf("%d",&y);
    input(p,y);
    output(p,y);
    return 0;
}
void input(struct Student stu[],int x)
 {
    int i;
    for(i=0;i<x;i++)
    scanf("%s%s%d%d%d",stu[i].num,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);

 }
void output(struct Student stu[],int x)
    {
        int i;
        for(i=0;i<x;i++)
        printf("%s,%s,%d,%d,%d\n",stu[i].num,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    }

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注