函数exit(0)应该有一个原型

编程入门 行业动态 更新时间:2024-10-24 10:14:05
本文介绍了函数exit(0)应该有一个原型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

#include Stdio.h #include conio.h #include math.h #include graphics.h #include< string.h> void intgraph(); void display_cordinate( char bg_c​​olor, char line_color); int Create_poly( int poly [] [ 2 ]); void fill_poly( int poly [] [ 2 ], int points, char line_color, char fill_color); void 标识( float 矩阵[ 3 ] [ 3 ]); void Translate_to_Relative( int poly [] [ 2 ], int points, int Xdis, int Ydis); void main() { int poly [ 3 ] [ 2 ],i,points,Xdis,Ydis; float Sx,Sy,Matrix [ 3 ] [ 3 ],温度,COS,仙; char ch; intgraph(); setfillstyle( 8 ,RED); points = Create_poly(poly); display_cordinate(DARKGRAY,WHITE); fill_poly(poly,points,WHITE,RED); getch(); 身份(矩阵); Xdis = 0-poly [ 0 ] [ 0 ]; Ydis = 0-poly [ 0 ] [ 1 ]; Translate_to_Relative(poly,points,Xdis,Ydis); 菜单: restorecrtmode(); do { clrscr(); printf( =================== =============); printf( 1..Scaling); printf( 2.翻译); printf( 3..Rotation); printf( 4.反射[X轴]); printf( 5.反射[Y轴]); printf( 6.反射[X = Y轴]); printf( 7.绘制); printf( 8. EXIT); printf( =================== =============); printf( 选择Ur Destiny: - ); ch = getche(); } while ((ch< ' 1 ')||(ch> ' 8')); switch (ch) { case ' 1': printf( 输入缩放比率: - ); printf( Sx: - ); scanf( %f,& Sx); printf( Sy: - ); scanf( %f,& Sy); for (i = 0 ; i< 3; i ++) { Matrix [i] [ 0 ] = Matrix [i] [ 0 ] * Sx; Matrix [i] [ 1 ] = Matrix [i] [ 1 ] * Sy; } goto 菜单; case ' 2' : printf( 输入翻译[Relative]: - ); printf( Tx: - ); scanf( %f,& Sx); printf( Ty: - ); scanf( %f,& Sy); 矩阵[ 2 ] [ 0 ] =矩阵[ 2 ] [ 0 ] + Sx; 矩阵[ 2 ] [ 1 ] =矩阵[ 2 ] [ 1 ] + Sy; goto 菜单; case ' 3' : printf( 输入旋转角度[度]: - ) ; scanf( %f,& Sx); Sx =(Sx * 3。 14 )/ 180; Cos = cos(Sx); Sin = sin(Sx); for (i = 0 ; i< = 2 ; i ++) { temp = Matrix [i] [ 0 ] * Cos-Matrix [i] [ 1 ] *罪; Matrix [i] [ 1 ] = Matrix [i] [ 0 ] * Sin + Matrix [i] [ 1 ] * Cos; Matrix [i] [ 0 ] = temp; } goto 菜单; case ' 4' :矩阵[ 1 ] [ 1 ] =矩阵[ 1 ] [ 1 ] * - 1; printf( 完成); getch(); goto 菜单; case ' 5' :矩阵[ 0 ] [ 0 ] =矩阵[ 0 ] [ 0 ] * - 1; printf( 完成); getch(); goto 菜单; case ' 6' :矩阵[ 0 ] [ 1 ] = 1 ; 矩阵[ 1 ] [ 1 ] = 1 ; printf( 完成); getch(); goto 菜单; case ' 7' : for (i = 0 ; i< = points; i ++) { temp = poly [i] [ 0 ] *矩阵[ 0 ] [ 0 ] + poly [i] [ 1 ] * Matrix [ 1 ] [ 0 ] + Matrix [ 2 ] [ 0 ]; poly [i] [ 1 ] = poly [i] [ 0 ] * Matrix [ 0 ] [ 1 ] + poly [i] [ 1 ] *矩阵[ 1 ] [ 1 ] + Matrix [ 2 ] [ 1 ]; poly [i] [ 0 ] = temp; } case ' 8': getch(); // closegraph(); exit( 0 ); } setgraphmode( 2 ); display_cordinate(DARKGRAY,WHITE); Translate_to_Relative(poly,points,-Xdis,-Ydis); fill_poly(poly,points,CYAN,RED); getch(); restorecrtmode(); do { clrscr(); printf( 是否要切换到菜单[Y | N]: - ); ch = getche(); } while ((ch!= ' Y')&&(ch!= ' N')); if (ch == ' Y' ) {身份(矩阵); Xdis = 0-poly [ 0 ] [ 0 ]; Ydis = 0-poly [ 0 ] [ 1 ]; Translate_to_Relative(poly,points,Xdis,Ydis); goto 菜单; } closegraph(); } void intgraph() { int g = DETECT,d; initgraph(& g,& d, c:\ tc\bgi); } void fill_poly( int poly1 [] [ 2 ], int points, char line_color, char fill_color) { int pol [ 20 ],I; char str [ 2 ]; for (i = 0 ; i< = points; i ++) { pol [i * 2] = poly1 [i] [ 0 ]; pol [i * 2 + 1] = poly1 [i] [ 1 ]; } pol [i * 2] = poly1 [ 0 ] [ 0 ]。 pol [i * 2 + 1] = poly1 [ 0 ] [ 1 ]; setcolor(line_color); setfillstyle( 8 ,fill_color); fillpoly(points + 1,pol); setcolor(fill_color); settextstyle( 1 , 0 , 3 ); for (i = 0 ; i< = points; i ++) { sprintf(str, %c,i + ' a'); outtextxy(poly1 [i] [ 0 ],poly1 [i] [ 1 ], STR); } } void 身份( float 矩阵[ 3 ] [ 3 ]) { int i,j; for (i = 0 ; i< = 2 ; i ++) { for (j = 0 ; j< = 2 ; j ++) { if (i = = j) Matrix [i] [j] = 1 ; else Matrix [i] [j] = 0 ; } } } int Create_poly( int poly [] [ 2 ]) { poly [ 0 ] [ 0 ] = 200 ; poly [ 0 ] [ 1 ] = 20 ; poly [ 1 ] [ 0 ] = 300 ; poly [ 1 ] [ 1 ] = 150 ; poly [ 2 ] [ 0 ] = 130 ; poly [ 2 ] [ 1 ] = 280 ; return 2 ; } void display_cordinate( char bg_c​​olor, char line_color) { int i; setbkcolor(bg_color); setcolor(line_color); for (i = 0 ; i< = 640 ; i + = 50 ) { line(i, 0 ,i, 480 ); } for (i = 0 ; i< = 480 ; i + = 50 ) { line( 0 ,i, 640 ,i); } 矩形( 0 , 0 , 639 , 479 ); } void Translate_to_Relative( int poly [] [ 2 ], int points, int Xdis, int Ydis) { int i; for (i = 0 ; i< = points; i ++) { poly [i] [ 0 ] = poly [i] [ 0 ] + Xdis; poly [i] [ 1 ] = poly [i] [ 1 ] + Ydis; } }

只有一个错误函数应该有一个原型,我尝试了很多东西,但这个错误没有消失。

解决方案

你缺少stdlib.h ...

#include < ; stdlib.h >

#include "Stdio.h" #include "conio.h" #include "math.h" #include "graphics.h" #include <string.h> void intgraph(); void display_cordinate(char bg_color,char line_color); int Create_poly(int poly[][2]); void fill_poly(int poly[][2],int points,char line_color,char fill_color); void Identity(float Matrix[3][3]); void Translate_to_Relative(int poly[][2],int points,int Xdis,int Ydis); void main() { int poly[3][2],i,points,Xdis,Ydis; float Sx,Sy,Matrix[3][3],temp,Cos,Sin; char ch; intgraph(); setfillstyle(8,RED); points=Create_poly(poly); display_cordinate(DARKGRAY,WHITE); fill_poly(poly,points,WHITE,RED); getch(); Identity(Matrix); Xdis=0-poly[0][0]; Ydis=0-poly[0][1]; Translate_to_Relative(poly,points,Xdis,Ydis); Menu: restorecrtmode(); do { clrscr(); printf("================================"); printf("1. Scaling"); printf("2. Translation"); printf("3. Rotation"); printf("4. Reflection [ X axis ]"); printf("5. Reflection [ Y axis ]"); printf("6. Reflection [ X=Y axis ]"); printf("7. Draw "); printf("8. EXIT "); printf("================================"); printf("Choose Ur Destiny:- "); ch=getche(); }while((ch<'1')||(ch>'8')); switch(ch) { case '1': printf("Enter Scaling Ratio:- "); printf("Sx:- "); scanf("%f",&Sx); printf(" Sy:- "); scanf("%f",&Sy); for(i=0;i<3;i++) { Matrix[i][0]=Matrix[i][0]*Sx; Matrix[i][1]=Matrix[i][1]*Sy; } goto Menu; case '2': printf("Enter Translation [Relative]:- "); printf("Tx:- "); scanf("%f",&Sx); printf(" Ty:- "); scanf("%f",&Sy); Matrix[2][0]=Matrix[2][0]+Sx; Matrix[2][1]=Matrix[2][1]+Sy; goto Menu; case '3': printf("Enter Rotation Angle [Degree]:- "); scanf("%f",&Sx); Sx=(Sx*3.14)/180; Cos=cos(Sx); Sin=sin(Sx); for(i=0;i<=2;i++) { temp=Matrix[i][0]*Cos-Matrix[i][1]*Sin; Matrix[i][1]=Matrix[i][0]*Sin+Matrix[i][1]*Cos; Matrix[i][0]=temp; } goto Menu; case '4': Matrix[1][1]=Matrix[1][1]*-1; printf("Done"); getch(); goto Menu; case '5': Matrix[0][0]=Matrix[0][0]*-1; printf("Done"); getch(); goto Menu; case '6': Matrix[0][1]=1; Matrix[1][1]=1; printf("Done"); getch(); goto Menu; case '7': for(i=0;i<=points;i++) { temp=poly[i][0]*Matrix[0][0]+poly[i][1]*Matrix[1][0]+Matrix[2][0]; poly[i][1]=poly[i][0]*Matrix[0][1]+poly[i][1]*Matrix[1][1]+Matrix[2][1]; poly[i][0]=temp; } case '8': getch(); // closegraph(); exit(0); } setgraphmode(2); display_cordinate(DARKGRAY,WHITE); Translate_to_Relative(poly,points,-Xdis,-Ydis); fill_poly(poly,points,CYAN,RED); getch(); restorecrtmode(); do { clrscr(); printf("Do you Want to Switch to MENU [Y|N]:- "); ch=getche(); }while( (ch!='Y') && (ch!='N') ); if(ch=='Y') { Identity(Matrix); Xdis=0-poly[0][0]; Ydis=0-poly[0][1]; Translate_to_Relative(poly,points,Xdis,Ydis); goto Menu; } closegraph(); } void intgraph() { int g=DETECT,d; initgraph(&g,&d,"c:\tc\bgi"); } void fill_poly(int poly1[][2],int points,char line_color,char fill_color) { int pol[20],i; char str[2]; for(i=0;i<=points;i++) { pol[i*2]=poly1[i][0]; pol[i*2+1]=poly1[i][1]; } pol[i*2]=poly1[0][0]; pol[i*2+1]=poly1[0][1]; setcolor(line_color); setfillstyle(8,fill_color); fillpoly(points+1,pol); setcolor(fill_color); settextstyle(1,0,3); for(i=0;i<=points;i++) { sprintf(str,"%c",i+'a'); outtextxy(poly1[i][0],poly1[i][1],str); } } void Identity(float Matrix[3][3]) { int i,j; for(i=0;i<=2;i++) { for(j=0;j<=2;j++) { if(i==j) Matrix[i][j]=1; else Matrix[i][j]=0; } } } int Create_poly(int poly[][2]) { poly[0][0]=200; poly[0][1]=20; poly[1][0]=300; poly[1][1]=150; poly[2][0]=130; poly[2][1]=280; return 2; } void display_cordinate(char bg_color,char line_color) { int i; setbkcolor(bg_color); setcolor(line_color); for(i=0;i<=640;i+=50) { line(i,0,i,480); } for(i=0;i<=480;i+=50) { line(0,i,640,i); } rectangle(0,0,639,479); } void Translate_to_Relative(int poly[][2],int points,int Xdis,int Ydis) { int i; for(i=0;i<=points;i++) { poly[i][0]=poly[i][0]+Xdis; poly[i][1]=poly[i][1]+Ydis; } }

its only one erroe" function should have a prototype" and i tried many thing but this error not gone.

解决方案

You are missing stdlib.h...

#include <stdlib.h>

更多推荐

函数exit(0)应该有一个原型

本文发布于:2023-11-16 06:22:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1601773.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:原型   函数   有一个   exit

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!