(今天进行对一些实例进行编程,来自牛客网初学者入门训练)
以下为一个系列,用程序写出一个图形:
1. 输入描述:多组输入,一个整数(1~20),表示正方形的长度,也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应边长的正方形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
int j = 0;
for(j=0;j<n;j++)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
2. 输入描述:多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表 示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
int j = 0;
for(j=0;j<=i;j++)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
3. 输出描述:多组输入,一个整数(2~20),表示翻转直角三角形直角边的长度,即“*”的数量, 也表示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的翻转直角三角形,每个“*”后面有一个空 格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
int j = 0;
for(j=n;j>i;j--)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
4. 输入描述:多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表 示输出行数。
输出描述:针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
int j = 0;
for(j=n-1;j>i;j--)
{
printf(" ");
}
int k = 0;
for(k=0;k<=i;k++)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
5. 输入描述:多组输入,一个整数(2~20),表示金字塔边的长度,即“*”的数量,,也表示输出 行数。
输出描述:针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
int k = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
for(j=n-1;j>i;j--)
{
printf(" ");
}
for(k=0;k<=i;k++)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
6. 输入描述:多组输入,一个整数(2~20),表示翻转金字塔边的长度,即“*”的数量,也表示输 出行数。
输出描述:针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
int k = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
for(j=0;j<i;j++)
{
printf(" ");
}
for(k=n;k>i;k--)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
7. 输入描述:多组输入,一个整数(2~20)。
输出描述:针对每行输入,输出用“*”组成的菱形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
int k = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<=n;i++)
{
for(j=n;j>i;j--)
{
printf(" ");
}
for(k=0;k<=i;k++)
{
printf("*");
}
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
{
printf(" ");
}
for(k=n;k>i;k--)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
8. 输入描述:多组输入,一个整数(2~20)。
输出描述:针对每行输入,输出用“*”组成的K形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
for(j=n;j>=i;j--)
{
printf("* ");
}
printf("\n");
}
for(i=0;i<=n;i++)
{
for(j=0;j<=i;j++)
{
printf("* ");
}
printf("\n");
}
}
return 0;
}
9. 输入描述:多组输入,一个整数(2~20)。
输出描述:针对每行输入,输出用“*”组成的箭形。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
int k = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<=n;i++)
{
for(j=n;j>i;j--)
{
printf(" ");
}
for(k=0;k<=i;k++)
{
printf("*");
}
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
{
printf(" ");
}
for(k=n;k>i;k--)
{
printf("*");
}
printf("\n");
}
}
return 0;
}
10. 输入描述:多组输入,一个整数(2~20),表示输出的行数,也表示组成正斜线的“*”的数量。
输出描述:针对每行输入,输出用“*”组成的正斜线。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0,i<n;i++)
{
for(j=n-1;j>i;j--)
{
printf(" ");
}
printf("*\n");
}
}
return 0;
}
11. 输入描述:多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜 线的长度。
输出描述:针对每行输入,输出用“*”组成的X形图案。
#include <stdio.h>
int main()
{
return 0;
}
(这道题试了几次,但是目前还是不能成功完成这个图形,后面有学习到了一定回来补上,有大佬会的可以在评论区打出来哈,但是应该没人会看我的文章)
12. 输入描述:多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数 量。
输出描述:针对每行输入,输出用“*”组成的“空心”正方形,每个“*”后面有一个空格。
#include <stdio.h>
int main()
{
int n = 0;
int i = 0;
int j = 0;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(i=0||i=n-1||j=0||j=n-1)
printf("* ");
else
printf(" ");
}
printf("\n");
}
}
return 0;
}