HDU 2016 数据的交换输出(水题)
1287
2022-08-03
520了,用C语言编程画了一个爱心表白(用c语言编写一个爱心的程序)
源码如下:
#include
#include
#include
#include
const float U = 0.1;
const float V = 0.053;
char word[] = "qwertyuiopasdfghjklzxcvbnm1234567890!@#$%^&*()_+=";
void SetColor(unsigned short fc, unsigned short bc) {
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon, (fc % 16) | (bc % 16 * 16));
}
int if_in_heart(float x, float y)
{
float t = (x * x + y * y - 1);
t = t * t * t;
return ((t - x * x * y * y * y) <= 0);
}
void print_love()
{
int slen = strlen(word);
int color = rand()%255;
color = color % 16 ? color : 1;
SetColor(color, 0);
int f = rand()%slen;
putchar(word[f]);
}
void draw_heart() {
int i;
float x, y;
for (y = 1.3; y >= -1.1; y -= U) {
for (x = -2; x < 1.4; x += V) {
if (if_in_heart(x, y) ) {
print_love();
} else {
printf(" ");
}
}
printf("\n");
}
}
int main()
{
SetConsoleCP(437);
SetConsoleOutputCP(437);
srand(time(NULL));
draw_heart();
getchar();
return 0;
}
说明:本程序使用 dev c++ 编译运行。理论上 其他编译器应该也是能正常编译的。
如果不喜欢这种混乱字母的形式,只需要改变 第 9 行 即可!
比如把第 9 行改为:
char word[] = "*";
效果如下:
第9行如果改成:
char word[] = "+";
效果如下:
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~