⑴ 请用c语言控制台程序写一个程序
#include<stdio.h>
typedefstructpoint{
intx;
inty;
}quadrangle;
intmain(intargc,charconst*argv[])
{
quadranglefour[4];
inti,j,tmpx,tmpy;
for(i=0;i<4;i++)
{
printf("输入第%d个点,每个点由x轴,y轴坐标表示如:125 ",i+1);
scanf("%d%d",&four[i].x,&four[i].y);
}
for(i=0;i<4;i++)
{
tmpx=four[i].x;
tmpy=four[i].y;
for(j=i+1;j<4;j++)
{
if(four[j].x<tmpx)
{
four[i].x=four[j].x;
four[i].y=four[j].y;
four[j].x=tmpx;
four[j].y=tmpy;
tmpx=four[i].x;
tmpy=four[i].y;
}
}
}
inta[2],b[2],c[2],d[2];
if(four[0].y>four[1].y)
{
a[0]=four[1].x;
a[1]=four[1].y;
d[0]=four[0].x;
d[1]=four[0].y;
}
else{
a[0]=four[0].x;
a[1]=four[0].y;
d[0]=four[1].x;
d[1]=four[1].y;
}
if(four[2].y>four[3].y)
{
b[0]=four[3].x;
b[1]=four[3].y;
c[0]=four[2].x;
c[1]=four[2].y;
}
else
{
b[0]=four[2].x;
b[1]=four[2].y;
c[0]=four[3].x;
c[1]=four[3].y;
}
printf("a(%d,%d)b(%d,%d)c(%d,%d)d(%d,%d) ",
a[0],a[1],b[0],b[1],c[0],c[1],d[0],d[1]);
return0;
}
⑵ c语言是不是只能写控制台啊
我来给你解释下吧:
C语言是很底层的东西。它能够用来写图形化界面,但是需要使用单独的图形库,因为关于图形的部分不是C语言标准里的东西。
Windows环境下的话,用C写图形化界面就得使用微软的Windows API。那个学起来很难,用起来也麻烦得很。微软为了简化图形开发,为C++开发者提供了C++编写的基于Windows API的类库封装--MFC(Microsoft Foundation Classes),为C提供了Windows SDK。MFC用起来还能简化不少,SDK则是依然很复杂。想用C写Windows系统下的图形化界面,就得学《Windows程序设计》。
Linux环境下的话,就QT、GTK+之类的。
所以说,Windows环境下用C写图形化界面的想法还是放弃吧,太难,外面基本上也没有哪个公司会做这样的开发。C本来就不是用来干这个的,主要用于系统应用开发,做底层的。
C++就用MFC,不过也不怎么好学,开发效率也不高。Java的话得学Swing、AWT,不过Java写界面也是渣得很。
现在最主流的图形界面开发都是用的C#。开发图形界面太简单了,特别是WPF。开发效率是当前最高的。你几乎不用学编程就能做界面,界面和编程基本是分离的。(当然动态界面控制是必须要编程实现的)
学完C学C++吧,了解下面向对象编程,然后就学C#,做图形界面就简单了。当然你也可以直接跳过C++学C#,只是可能不好接受点。
另外,关于界面,这些界面都是API自己画出来的,你只需要在代码里调用就能产生,而不是要你自己去画。在集成开发环境(比如Visual C++、Visual Studio)里拖拽控件到界面上实际上也是集成开发环境在自动为你生成调用控件的代码。
⑶ C语言只能写控制台程序
不是。
C语言还可以写编写WINDOWS 应用程序。
需要些SDK的知识,windows的实现中基本上都是用的C语言,其各种接口基本上都是原生C语言函数,具体比如SDK用的windows API。
使用纯C语言编写windows程序,工作量将会相当大,下面是一个小例子:
/*
*Thisisasimplewindowsprogram,itdoesnothingbutdrawanellipse.
*WindowsSDK,Win32API,PureC,(NotC++orMFC!!)
*Suxpertatgmaildotcom,2008/8/24
**/
#include<windows.h>
LONGWINAPIWndProc(HWND,UINT,WPARAM,LPARAM);
intAPIENTRYWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,
LPSTRlpszCmdLine,intnCmdShow){
/*TheEntryforwindowsprogram,justlikemain()indos*/
WNDCLASSwc;
HWNDhwnd;
MSGmsg;
wc.style=0;//Classstyle
wc.lpfnWndProc=(WNDPROC)WndProc;//Windowprocereaddress
wc.cbClsExtra=0;//Classextrabytes
wc.cbWndExtra=0;//Windowextrabytes
wc.hInstance=hInstance;//Instancehandle
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);//Iconhandle
wc.hCursor=LoadCursor(NULL,IDC_ARROW);//Cursorhandle
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);//Backgroundcolor
wc.lpszMenuName=NULL;//Menuname
wc.lpszClassName="WinSDKtest";//WNDCLASSname
RegisterClass(&wc);
hwnd=CreateWindow(
"WinSDKtest",//WNDCLASSname
"SDKApplication",//Windowtitle
WS_OVERLAPPEDWINDOW,//Windowstyle
CW_USEDEFAULT,//Horizontalposition
CW_USEDEFAULT,//Verticalposition
CW_USEDEFAULT,//Initialwidth
CW_USEDEFAULT,//Initialheight
HWND_DESKTOP,//Handleofparentwindow
NULL,//Menuhandle
hInstance,//Application'sinstancehandle
NULL//Window-creationdata
);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0)){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
returnmsg.wParam;
}
LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,
LPARAMlParam)
{
/*...*/
PAINTSTRUCTps;
HDChdc;
switch(message){
caseWM_PAINT:
hdc=BeginPaint(hwnd,&ps);
Ellipse(hdc,0,0,800,600);
//
EndPaint(hwnd,&ps);
break;//Someoneliketowritereturnhere.
caseWM_DESTROY:
PostQuitMessage(0);
break;
default:
returnDefWindowProc(hwnd,message,wParam,lParam);
}
return0;
}
基本过程就是直接调用windows提供的API函数,完成从窗口创建,显示等界面功能到深层的文件操作,注册表等甚至windows内核调试等高级功能。
⑷ 什么是C语言控制台
C语言控制台就是C语言在新建工程时选的一种工程类型,称为Win32控制台应用程序。
控制台应用程序就是模拟DOS环境下运行的程序。
建立Win32控制台应用程序的过程如下:
新建项目--->Win32--->Win32控制台应用程序
建立完控制台应用程序后,就可以在新建的源文件中输入C语言程序,经编译完成后就可以运行在DOS环境中运行(即黑框)。
⑸ C语言 怎么使控制台窗口大小固定不变
啊是发说的 提供的方法有效,但在VC++6.0中GetConsoleWindow()无法通过编译
经查询并添加头文件、声明等之后均无法使用
后将GetConsoleWindow()换为FindWindow(), 亲测可用
例如:SetWindowLong(FindWindow("ConsoleWindowClass", NULL),GWL_STYLE,GetWindowLong(FindWindow("ConsoleWindowClass", NULL),GWL_STYLE) & ~WS_SIZEBOX & ~WS_MAXIMIZEBOX & ~WS_MINIMIZEBOX);
已经实现隐藏最大化按钮
FindWindow()也能获取控制台窗口句柄,内含两个参数,具体可网络
参考链接:网页链接
C语言、VC++6.0编译
⑹ C语言编写的怎么都是命令控制台程序
1、控制台程序是基础,有基础了写图形界面的程序就很简单了。学完C++了学windows编程、MFC什么的,到时候就是图形界面了。
2、图形界面需要些SDK的知识,windows的实现中基本上都是用的C语言,其各种接口基本上都是原生C语言函数,具体比如SDK用的windows API。
使用纯C语言编写windows程序,工作量将会相当大,下面是一个小例子:
/*
*Thisisasimplewindowsprogram,itdoesnothingbutdrawanellipse.
*WindowsSDK,Win32API,PureC,(NotC++orMFC!!)
*Suxpertatgmaildotcom,2008/8/24
**/
#include<windows.h>
LONGWINAPIWndProc(HWND,UINT,WPARAM,LPARAM);
intAPIENTRYWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,
LPSTRlpszCmdLine,intnCmdShow){
/*TheEntryforwindowsprogram,justlikemain()indos*/
WNDCLASSwc;
HWNDhwnd;
MSGmsg;
wc.style=0;//Classstyle
wc.lpfnWndProc=(WNDPROC)WndProc;//Windowprocereaddress
wc.cbClsExtra=0;//Classextrabytes
wc.cbWndExtra=0;//Windowextrabytes
wc.hInstance=hInstance;//Instancehandle
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);//Iconhandle
wc.hCursor=LoadCursor(NULL,IDC_ARROW);//Cursorhandle
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);//Backgroundcolor
wc.lpszMenuName=NULL;//Menuname
wc.lpszClassName="WinSDKtest";//WNDCLASSname
RegisterClass(&wc);
hwnd=CreateWindow(
"WinSDKtest",//WNDCLASSname
"SDKApplication",//Windowtitle
WS_OVERLAPPEDWINDOW,//Windowstyle
CW_USEDEFAULT,//Horizontalposition
CW_USEDEFAULT,//Verticalposition
CW_USEDEFAULT,//Initialwidth
CW_USEDEFAULT,//Initialheight
HWND_DESKTOP,//Handleofparentwindow
NULL,//Menuhandle
hInstance,//Application'sinstancehandle
NULL//Window-creationdata
);
ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0)){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
returnmsg.wParam;
}
LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,
LPARAMlParam)
{
/*...*/
PAINTSTRUCTps;
HDChdc;
switch(message){
caseWM_PAINT:
hdc=BeginPaint(hwnd,&ps);
Ellipse(hdc,0,0,800,600);
//
EndPaint(hwnd,&ps);
break;//Someoneliketowritereturnhere.
caseWM_DESTROY:
PostQuitMessage(0);
break;
default:
returnDefWindowProc(hwnd,message,wParam,lParam);
}
return0;
}
基本过程就是直接调用windows提供的API函数,完成从窗口创建,显示等界面功能到深层的文件操作,注册表等甚至windows内核调试等高级功能。
⑺ C语言学控制台程序有什么用,或者说控制台程序有什么意义。
控制台程序是为了兼容DOS程序而设立的,这种程序的执行就好像在一个DOS窗口中执行一样,没有自己的界面。主要是帮助你学习最基本的c的语法,c的语法还是蛮重要的,是以后编程的基础
⑻ 如何用c语言改变控制台的尺寸大小比如尺寸设置为800*600
在运行时候,右击标题栏,选择属性,在出现的对话框里面就能改