C语言中的简单图形打印
来源:互联网 发布:安庆市网络广播电视 编辑:程序博客网 时间:2024/05/22 14:18
1.菱形:
#include<stdio.h>int main(){int i,j,n;printf("请输入要打印的菱形行数:");scanf("%d",&n);for(i = 0;i < n;i++){for(j = 0;j < n - i;j++){printf(" ");}for(j = 0;j < 2 * i - 1;j++){printf("*");}printf("\n");}for(i=1;i<=n;i++){for(j=1;j<=i-1;j++){printf(" ");}for(j=1;j<=2*n-2*i+1;j++){printf("*");}printf("\n");}return 0;}2.平行四边形
#include<stdio.h>int main(){int i,j,n;printf("请输入要打印的平行四边形行数:\n");scanf("%d",&n);for(i = 1;i < n;i++){for(j = 1;j < n - i;j++){printf(" ");}for(j = 1;j < n;j++){printf("*");}printf("\n");}return 0;}
3.顶尖朝上等腰三角形
#include<stdio.h>int main(){int n,i,j;printf("请输入要打印的尖朝上的等腰三角行数:");scanf("%d",&n);for(i = 1;i <= n;i++){for(j = 1;j <= n - i;j++){printf(" ");}for(j = 1;j <= 2 * i - 1;j++ ){printf("*");}printf("\n");}return 0;}4.顶尖朝下等腰三角形
#include<stdio.h>int main(){int n,i,j;printf("请输入要打印的尖朝下的等腰三角行数:");scanf("%d",&n);for(i = 1;i <= n;i++){for(j = 1;j <= i - 1;j++){printf(" ");}for(j = 1;j <= (2 * n - 2 * i) + 1;j++ ){printf("*");}printf("\n");}return 0;}5.空心菱形
#include<stdio.h>int main(){ int i,j,k,line,m; printf("请输入行数:"); scanf("%d",&line); m=(line+1)/2; for(i=1;i<=m;i++) { for(k=0;k<m-i;k++) { printf(" "); } printf("*"); if(i==1) { printf("\n"); continue; } for(j=0;j<2*i-3;j++) { printf(" "); } printf("*"); printf("\n"); } for(i=m-1;i>0;i--) { for(k=0;k<m-i;k++) { printf(" "); } printf("*"); if(i==1) { printf("\n"); continue; } for(j=0;j<2*i-3;j++) { printf(" "); } printf("*"); printf("\n"); } return 0;}
6.立体心形
#include <stdio.h>#include <math.h>float f(float x, float y, float z) { float a; a = x * x + 9.0f / 4.0f * y * y + z * z - 1; return a * a * a - x * x * z * z * z - 9.0f / 80.0f * y * y * z * z * z;}float h(float x, float z) { float y; for ( y = 1.0f; y >= 0.0f; y -= 0.001f) if (f(x, y, z) <= 0.0f) { return y; } return 0.0f;}void main() { float z,x,v,y0,ny,nx,nz,nd,d; for ( z = 1.5f; z > -1.5f; z -= 0.05f) { for ( x = -1.5f; x < 1.5f; x += 0.025f) { v = f(x, 0.0f, z); if (v <= 0.0f) { y0 = h(x, z); ny = 0.01f; nx = h(x + ny, z) - y0; nz = h(x, z + ny) - y0; nd = 1.0f / sqrtf(nx * nx + ny * ny + nz * nz); d = (nx + ny - nz) * nd * 0.5f + 0.5f; putchar(".:-=+*#%@"[(int)(d * 5.0f)]); } else putchar(' '); } putchar('\n'); }}
注:Linux下编译时需要链接数学库,gcc xxx.c -lm 可生成a.out文件
阅读全文
0 0
- C语言中的简单图形打印
- c语言实现--------简单打印图形
- C语言打印图形
- C语言 打印图形
- C语言基础-几个简单图形的打印
- c语言图形打印 12345
- C语言:循环练习题 打印图形
- C语言:打印图形 数字直角三角形
- C语言:打印图形练习测试
- C语言空心菱形 *号打印图形
- c语言之打印输出图形
- C语言实验——打印图形
- C语言实验——打印图形
- C语言中用循环打印各种图形
- 用C语言打印图形&C语言注释符
- 简单的打印图形
- Unity打印简单图形
- c 语言中的图形模式
- 19读书笔记之程序运行时权限
- html学习4—body中标签
- Stones
- oracle中表insert or update or delete触发器
- 8.java回收机制
- C语言中的简单图形打印
- $(document).ready和window.onload的区别
- csu 1785 又一道简单题
- css语句
- Spring Cloud(三):服务消费Ribbon
- JNI的相互调用Dome
- Android Volley网络框架使用笔记
- 免费企业网络入侵检测工具(IDS)
- lucene5--多线程创建索引