帮我写一个c语言显示图片的函数,用graphics.h头文件
时间: 2023-06-10 11:04:45 浏览: 586
好的,以下是一个简单的C语言显示图片的函数示例,使用了graphics.h头文件:
```c
#include <graphics.h>
void displayImage(char *filename) {
int gdriver = DETECT, gmode;
initgraph(&gdriver, &gmode, "");
readimagefile(filename, 0, 0, getmaxx(), getmaxy());
getch();
closegraph();
}
```
这个函数有一个参数,即要显示的图像文件的名称。它使用了graphics.h头文件中的函数来初始化图形界面、读取图像文件并在屏幕上显示图像。最后,通过按下任意键来关闭图像。请注意,您需要在代码中指定图形驱动程序和模式。
希望能帮到你,如果你还有其他问题,可以继续问。
相关问题
graphics.h头文件c语言
graphics.h 是一个 C 语言图形库的头文件,它包含了一系列函数,可以用来在屏幕上绘制各种图形,例如线段、圆形、矩形、多边形等等。它通常被用于开发基于图形界面的应用程序,例如游戏、绘图软件等等。然而,需要注意的是,graphics.h 是一个非标准的头文件,它并不是 C 语言标准库的一部分,因此在不同平台和编译器上可能会有所不同。
用C语言实现在屏幕上绘制抛物线与直线的迭加图形。其中抛物线用“*” 表示,直线用“+”表示。抛物线和直线方程自选,但要求 直线斜率可以输入。 用两种颜色区分直线与抛物线。但不用graphics.h头文件
以下是用C语言实现在屏幕上绘制抛物线与直线的迭加图形的代码:
```c
#include <stdio.h>
#define ROWS 20
#define COLS 40
void draw(char screen[ROWS][COLS]) {
int i, j;
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("%c", screen[i][j]);
}
printf("\n");
}
}
int main() {
char screen[ROWS][COLS];
int i, j;
float slope;
int y_intercept;
// Initialize screen
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
screen[i][j] = ' ';
}
}
// Draw parabola
for (i = 0; i < ROWS; i++) {
float x = i - ROWS/2;
float y = -0.05 * x * x + ROWS/2;
if (y >= 0 && y < COLS) {
screen[i][(int)y] = '*';
}
}
// Draw line
printf("Enter slope: ");
scanf("%f", &slope);
printf("Enter y-intercept: ");
scanf("%d", &y_intercept);
for (i = 0; i < ROWS; i++) {
float x = i - ROWS/2;
float y = slope * x + y_intercept;
if (y >= 0 && y < COLS) {
screen[i][(int)y] = '+';
}
}
// Draw screen
draw(screen);
return 0;
}
```
这个程序使用了一个二维字符数组来表示屏幕,其中每个元素表示屏幕上的一个像素点。程序首先初始化屏幕为全部空格,然后绘制了一个抛物线和一条直线。抛物线的方程为`y = -0.05 * x * x + ROWS/2`,其中`ROWS`为屏幕的行数,`x`的范围为`-ROWS/2`到`ROWS/2`。直线的斜率和y截距由用户输入。程序最后调用`draw`函数将屏幕上的内容打印出来。
阅读全文