用C语言编写心形的方法:
#include<stdio.h>
int n
void draw(int n)
{
int i,j
for (i=1-(n>>1)i<=ni++)
if (i>=0)
{
for (j=0j<ij++) printf(" ")
for (j=1j<=2*(n-i)+1j++) printf(" *")
printf("\n")
}
else
{
for (j=ij<0j++) printf(" ")
for (j=1j<=n+2*i+1j++) printf(" *")
for (j=1j<=-1-2*ij++) printf(" ")
for (j=1j<=n+2*i+1j++) printf(" *")
printf("\n")
}
}
int main()
{
printf("Please input the size (n>=4):")
scanf("%d",&n)
draw(n)
return 0
}
扩展资料
C程序是由一组变量或是函数的外部对象组成的。 函数是一个自我包含的完成一定相关功能的执行代码段。我们可以把函数看成一个“黑盒子”,你只要将数据送进去就能得到结果,而函数内部究竟是如何工作的,外部程序是不知道的。
外部程序所知道的仅限于输入给函数什么以及函数输出什么。函数提供了编制程序的手段,使之容易读、写、理解、排除错误、修改和维护。
参考资料:百度百科--c语音
输出BMP图片的:#include "stdlib.h"
#include "graphics.h"
#include "stdio.h"
#define WIDTH 120
#define HEIGHT 120
//用一个二维数组保存的图片,这里图片长高必须是4的倍数,不是4的倍数必须进行补齐,
//但是这里面是没有进行补位操作的,你也可以自己去看看24位bmp图片的编码格式,
//然后就知道该怎么用了
void mian()
{
FILE *fp
unsigned char bmp[16][200]
unsigned char bmp2[WIDTH][HEIGHT*3]
int i = 1,size1 = 0,size2 = 0,size0 = 0
int j = 0
if((fp = fopen("G:\\new\\Boy5.bmp","rb")) == NULL)//打开图片
exit(0)
i = 0
fseek(fp,54L,0)//BMP图片阵列是从第54位开始
//#########读入图片阵列到数组中##########
while(i <WIDTH*HEIGHT*3)
{
*(bmp2[0]+i) = fgetc(fp)
i++
}
fclose(fp)
initgraph(700, 700) // 打开图形窗口,这里这个函数我之前是在VC下编译的,用了一个网上的绘图库,与TC的打开图形界面函数有所差别,改掉就可以了
//####################################输出图片,这里是打点的方式在图形界面输出,
for(i = 0i <(WIDTH-1))
{
for(j =0j <(HEIGHT-1)*3 )
{
putpixel(50+(j/3),600-(i/1),RGB((int)bmp2[i][j+2],(int)bmp2[i][j+3],(int)bmp2[i][j+4]))//输出像素点
j+=3
}
i++
}
getchar()
closegraph() // 关闭图形窗口
}