ubuntu+vim+gcc
01首先,输入预处理指令#include <stdio.h>蔽空与函数原型void print(int n)。
其中,n表示行数。
02然后,对输入的n进行提前判断,若小于0或为偶数,则结束打印。
03接着对上半个菱形进行输出(包括最长的行)。使用两层循环进行输改并租出,分别控制行数与行内的位置。
04接着对下半个菱形进行输出(包括最长的行)。也使用两层循环进行输出,分别控制行数与行内的位置。
05对n=5与n=7进行输出测试,代码如下。
06编译运行后的结果如下
07以下是所有的代码:
#include <stdio.h>
void print(int n)
{
//判断n是否符合正奇数的要求
if(n <0 || n % 2 == 0)
//不符合则直接退出
return
//对上半个菱形输出
int i = 1,j = 1
//i控制行数
for(i = 1i <= (n + 1) / 2i++)
{
//j控制每一行的位置
//输出空格
for(j = 1j <= (n+1)/2 - ij++)
printf(" ")
//输出*
for(j = 1j <= 2 * i - 1j++)
printf("*")
//输出换行
printf("\n")
}
//输出下一半
//i控制行数
for(i = 1i <= n/2i++)
{
//j控制每一行的位置
//输出空格
for(j = 1j <= ij++)
printf(" ")
//输出*
for(j = 1j <= n -2 * ij++)
printf("*")
//输出换行
printf("\n")
}
}
//测试函数,测试n=5和n=7
int main()
{
printf("5\n")
print(5)
printf("7\n")
print(7)
return 0
}
下面的程序是菱形打印的【终结者】,改变下设置,就基本可以满足所有菱形碧核打印的题目。程序主体 for 语句只裤滚有9行,简单而强大 */#include <stdio.h>#include <stdlib.h>#include <string.h>// 这个小函数用来输出 repeatTimes 个字符
#includevoid main(){printf(" *\n")printf(" ***\n")printf(" *****\n")printf("胡慧余 ***\n")printf(" *\n")} 这是最简单的。下面一个稍微复杂一点。#includevoid main(){int i=0,j=0,k=0for(i=0i{for(j=6-ij>=0j--){putchar(' ')...
手机党输入#include"stdio.h"main(){printf(" *\n")printf(" * *\n")printf(" * *\n")printf(" * *\n")printf(" *\n")}
#include <stdio.h>int main()
{
int i,j,m,n
printf("请输入菱形的行数:")
//判断n是否符合正奇数的要求
while (scanf("%d", &n) != EOF &&n % 2 == 1)
{ //对毁让滚上半个菱形输出
for (i = 1i <= (n + 1) / 2i++)
{
//i控制行数,j控制每一行的位置
//输出空格
for (j = 1j <= (n + 1) / 2 - ij++)
printf(" ")
//输出*
for (j = 1j <= 2 * i - 1j++)
printf("*")
//输出换行
printf("\n")
}
//输出下一半
//i控制行数
for (i = 1i <= n / 2i++)
{
//j控制每一行的位滑枯置纤余
//输出空格
for (j = 1j <= ij++)
printf(" ")
//输出*
for (j = 1j <= n - 2 * ij++)
printf("*")
//输出换行
printf("\n")
}
}
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)