c语言1、输出钝角三角形星阵,角1tan值(45度)小于角2tan值(74度(2*37度)),给定高度20,15(要求每个星星间隔一个空格,而且前面空格需要输出)
时间: 2024-11-22 13:48:10 浏览: 13
二年级数学下册 锐角三角形、直角三角形、钝角三角形教案1 沪科版 教案.doc
在C语言中,你可以通过循环结构和条件判断来输出指定角度的钝角三角形星阵。这里给出一个示例程序,假设你想要打印出高度为20,两边角度分别为45度和74度(即两个90度减去37度)的钝角三角形:
```c
#include <stdio.h>
#include <math.h>
// 函数计算指定角度下的星号数量
int get_star_count(int angle) {
return round(sin(angle * M_PI / 180));
}
int main() {
int height = 20;
int angle1 = 45;
int angle2 = 74;
// 钝角三角形顶点数比底边长度少1
int total_stars = (height + 1) * 2 - 1;
for (int i = 0; i <= height; ++i) {
// 计算第一边和第二边对应的星号数
int stars1 = get_star_count(angle1);
int stars2 = get_star_count(angle2);
// 根据当前行的位置调整前导空格
int spaces = total_stars - stars2;
// 输出星号和空格
for (int j = 0; j < spaces; ++j) {
printf(" ");
}
for (int k = 0; k < stars1; ++k) {
printf("*");
}
if (i < height) { // 如果不是最后一行
printf("\n"); // 换行
for (int l = 0; l < spaces; ++l) {
printf(" ");
}
for (int m = 0; m < stars2; ++m) {
printf("*");
}
}
}
return 0;
}
```
运行这个程序,你会看到满足条件的钝角三角形星阵。
阅读全文