用C语言实现打印菱形
2017-02-24 08:50
501 查看
用C语言实现打印一个空心的菱形,菱形的高度由用户输入。
/*
函数的功能是打印一个空心的菱形,菱形的总高度由用户输入
根据菱形的特性,高度应该是一个奇数,如果输入偶数,根据程序的
算法,是将该偶数加1作为新的高度来打印菱形
*/
#include<stdio.h>
#include<stdlib.h>
int main(void){
int n;
printf("请输入要打印的菱形的高度:\n");
printf("(高度应该为奇数,如若是偶数则自动在该数值上面加1作为打印的高度)\n");
scanf("%d",&n) ;
for(int i=1;i<=n/2+1;i++){ //先打印菱形的上半部分,此时包含了中间的那一部分由n/2+1来体现
for(int j=1;j<=n/2+1-i;j++){ //根据每一行i来决定要打印的空格数
printf(" ");
}
printf("*"); //打印完空格后,打印第一个*
if((2*i-3)<1){ //根据行数i判断该行有没有必要打印第二*,如果有的话判断值应该是大于等于1;如果没有则直接换行并继续循环
printf("\n");
continue;
}
for(int j=0;j<(2*i-3);j++){ //根据行数i判断要打印的中间的空格,打印完之后,再打印最后的*,至此循环结束
printf(" ");
}
printf("*\n");
}
for(int i=n/2;i>=1;i--){ //在打印菱形的下半部分 ,其分析同上
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
printf("*");
if((2*i-3)<1){
printf("\n");
continue;
}
for(int j=0;j<(2*i-3);j++){
printf(" ");
}
printf("*\n");
}
return 0;
}
用C语言实现打印实心的菱形,菱形的高度由用户输入。该函数的代码实现,分析同上
/*
函数的功能是打印一个实心的菱形,菱形的总高度由用户输入
根据菱形的特性,高度应该是一个奇数,如果输入偶数,根据程序的
算法,是将该偶数加1作为新的高度来打印菱形
*/
#include<stdio.h>
#include<stdlib.h>
int main(void){
int n;
printf("请输入要打印的菱形的高度:\n");
printf("(高度应该为奇数,如若是偶数则自动在该数值上面加1作为打印的高度)\n");
scanf("%d",&n) ;
for(int i=1;i<=n/2+1;i++){
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
for(int j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
for(int i=n/2;i>=1;i--){
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
for(int j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
return 0;
/*
函数的功能是打印一个空心的菱形,菱形的总高度由用户输入
根据菱形的特性,高度应该是一个奇数,如果输入偶数,根据程序的
算法,是将该偶数加1作为新的高度来打印菱形
*/
#include<stdio.h>
#include<stdlib.h>
int main(void){
int n;
printf("请输入要打印的菱形的高度:\n");
printf("(高度应该为奇数,如若是偶数则自动在该数值上面加1作为打印的高度)\n");
scanf("%d",&n) ;
for(int i=1;i<=n/2+1;i++){ //先打印菱形的上半部分,此时包含了中间的那一部分由n/2+1来体现
for(int j=1;j<=n/2+1-i;j++){ //根据每一行i来决定要打印的空格数
printf(" ");
}
printf("*"); //打印完空格后,打印第一个*
if((2*i-3)<1){ //根据行数i判断该行有没有必要打印第二*,如果有的话判断值应该是大于等于1;如果没有则直接换行并继续循环
printf("\n");
continue;
}
for(int j=0;j<(2*i-3);j++){ //根据行数i判断要打印的中间的空格,打印完之后,再打印最后的*,至此循环结束
printf(" ");
}
printf("*\n");
}
for(int i=n/2;i>=1;i--){ //在打印菱形的下半部分 ,其分析同上
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
printf("*");
if((2*i-3)<1){
printf("\n");
continue;
}
for(int j=0;j<(2*i-3);j++){
printf(" ");
}
printf("*\n");
}
return 0;
}
用C语言实现打印实心的菱形,菱形的高度由用户输入。该函数的代码实现,分析同上
/*
函数的功能是打印一个实心的菱形,菱形的总高度由用户输入
根据菱形的特性,高度应该是一个奇数,如果输入偶数,根据程序的
算法,是将该偶数加1作为新的高度来打印菱形
*/
#include<stdio.h>
#include<stdlib.h>
int main(void){
int n;
printf("请输入要打印的菱形的高度:\n");
printf("(高度应该为奇数,如若是偶数则自动在该数值上面加1作为打印的高度)\n");
scanf("%d",&n) ;
for(int i=1;i<=n/2+1;i++){
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
for(int j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
for(int i=n/2;i>=1;i--){
for(int j=1;j<=n/2+1-i;j++){
printf(" ");
}
for(int j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
return 0;
}
相关文章推荐
- C语言实现用星号在屏幕上打印菱形
- C语言实现打印各种菱形
- 两个for循环打印菱形【C语言】
- 一个通用的调用shell命令及打印退出状态的C语言实现
- C语言 打印一个用字符表示的菱形或正(倒)三角形
- C语言实现/etc/passwd的逐行显示并打印行号和用户名
- C语言实现打印1000以内素数的三种基本方法
- 一条for循环实现菱形打印
- 打印单词长度的直方图--C语言的多种实现
- 打印字符频度直方图--C语言实现
- C语言输出空心菱形的实现
- C语言实现单链表的生成打印查找删除逆置排序
- c语言扫描实现“菱形”数阵以及结果
- 一种用C语言实现的打印程序源码的方法
- 打印一个菱形(C语言)
- 打印字符频度直方图--C语言实现
- 用C语言实现顺时针螺旋方阵的打印(含算法)
- 数理逻辑,打印8个命题的所有组合(用c语言实现)
- 『每日一题 2012-02-09』打印回形数 C语言实现
- C语言实现打印乘法口诀表