用户登录
用户注册

分享至

怎么用c语言做软件界面设计 C语言开发的软件界面怎么设计的啊

  • 作者: 裤子挂钩
  • 来源: 51数据库
  • 2020-04-17

如果你是使用的VC (Visual Studio C++)的话,也是有与VB类似的工具箱来拖放控件的,对于一般的应用程序,推荐基于MFC来开发。--这意味着你需要再学习一些新的东西,如果你只是处于学习C语言的阶段,这没有必要这样。

如果你是使用的Turbo C之类的,因为那个年代很多系统还是DOS的字符界面,所以基本上没有好的工具来作GUI界面,需要自己编辑资源文件来创建Win32的界面,需要比较熟悉win32的api。对于简易的界面而言,这是可行的,复杂点的,还是使用VC比较好。

c语言编程是不是设计软件,那软件界面是怎么做的???

C语言是一门语言,是用来编写程序的一门语言。

软件界面是是用C语言编写出来了的。

使用C语言编写程序需要一个环境,这个环境就叫程序开发环境。

如win tc ,微软C 等 这都是开发环境。

推荐楼主

http://www.enet.com.cn/article/2012/0822/A20120822153730.shtml

如何用c语言设计界面?

#include "Conio.h"

#include "graphics.h" /*这个图形函数库可以用来画界面*/

void initgr(void) /* BGI初始化 */

{

int gd = DETECT, gm = 0; /* 和gd = VGA,gm = VGAHI是同样效果 */

registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */

initgraph(&gd, &gm, "");

}

int main(void)

{

initgr(); /* BGI初始化 */

line(25, 25, 220, 220);

circle(100, 100, 50);

getch(); /* 暂停一下,看看前面绘图代码的运行结果 */

closegr(); /* 恢复TEXT屏幕模式 */

return 0;

}

怎么用c语言做一个界面

呵呵,楼主和我当初一样的迷惑。

我当初啃C语言的时候,也是想用C语言做界面出来,走了很多冤枉路,这里希望能给楼主一些提示。

如果你想用“纯”C来做界面的话,那么我会很肯定的告诉你,很难。你所有的操作都要调用API,包括每个按钮的位置、大小,框的位置、大小等等都是通过计算得出来的。这样一来开发的效率是可想而知的。

当然,也有专门做界面的,程序用C语言来写。比如:QT。具体的楼主可以去了解了解。

如果你想感受一下C语言的“乐趣”的话,在Win32中写一下程序:

#include <windows.h>

void main()

{

MessageBox(NULL," Hello World!","我的第一个窗口程序",MB_OK);

//这里的MessageBox函数,就是API函数,函数的意思是调用一个信息框

}

界面只是一个和用户交互的窗口,比如说在MFC中,界面和程序之间数据传递的方式就是通过UpDate()这个函数,UpDate(FALSE);是把变量数据传给界面,UpDate(TRUE)是把界面数据传给变量。当然,前提是需要它们之间关联一下。这么一说楼主估计就明白界面的用处了吧。

MFC是用C++开发的,C++和C上还是有很大的差异的。直接入门会有很大的难度。建议楼主可以先看看C++的书。了解下,什么是类,什么是容器,什么是重载,什么是构造,什么是析构,什么是面向对象。这也不是一句话两句话能讲完的。

我给楼主些意见:

一:想玩界面的话,就用QT写,或者先用其它简单语言(VB、或国产易语言。PS:易语言实质上就是C++的封装,不过很多功能都打包了,用起来比MFC简单的多。)。

二:如果你想更深一步做软件,可以选择学习C++,然后学MFC

三:C语言很强大,是其它编程易语言无法超越的(个人观点)。你前面的说C语言学的很好,我觉得你话撩的有点早。(这个观点当你水平从菜鸟上升一两个等级时候你就会明白)

四:多做项目。(PS:自己想做什么软件,就着手做,不要把要求定的太高,比你水平高一点的软件,做项目是上升最快的方法之一)

C语言 怎么设计界面啊

谁说的啊,TC也能设计界面啊。GRAPHIC.H头文件里有图形函数吧。

C不是为应用软件而设计的,你要真想把界面做的漂漂亮亮的,建议用JAVA或者VB什么的,但是不能不说,C很好很强大。

如何用C语言设计这个界面?尤其是边框

代码如下:

#include <stdio.h>

#include <conio.h>

int main()

{

int num = 0; // 要输入的数字

printf("|---------------------------------------|\n");

printf("|\t请输入选项编号(0-7):\t\t|");

printf("\n|---------------------------------------|\n");

printf("|\t1--输入:\t\t\t|\n");

printf("|\t1--显示:\t\t\t|\n");

printf("|\t1--查找:\t\t\t|\n");

printf("|\t1--最值:\t\t\t|\n");

printf("|\t1--插入:\t\t\t|\n");

printf("|\t1--删除:\t\t\t|\n");

printf("|\t1--退出:\t\t\t|\n");

printf("|---------------------------------------|\n");

printf("\t ");

scanf("%d", &num);

printf("\t输入了%d\n", num);

getch();

return 0;

};

界面效果:

如何用C语言程序编写一个学生成绩管理系统,界面用菜单进行设计。菜单功能可用函数实现。

# include <iostream>

# include <fstream>

# include <string.h>

#include <conio.h>//用getch();

using namespace std;

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌Student类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

class Student

{

public:

char name[20];

char Id[20];

int Cnum; //C++课程得分

int Mnum; //汇编课程得分

int Enum; //嵌入式操作系统课程得分

int sum; //总分

Student * Next;

void Input()

{

cout<<"\t\t请输入学生的姓名:"; cin>>name;

cout<<"\t\t请输入学生的学号:"; cin>>Id;

cout<<"\t\t请输入C++课程的成绩:"; cin>>Cnum;

cout<<"\t\t请输入汇编课程的成绩:"; cin>>Mnum;

cout<<"\t\t请输入嵌入式操作系统课程的成绩:"; cin>>Enum;

sum=Cnum+Mnum+Enum;

}

void ReadFile(istream & in)

{

in>>name>>Id>>Cnum>>Mnum>>Enum>>sum;

}

void Show()

{

cout<<"姓名:"<<name<<endl<<"学号:"<<Id<<endl<<"C++:"<<Cnum<<endl

<<"汇编:"<<Mnum<<endl<<"嵌入式操作系统:"<<Enum<<endl<<"总成绩:"<<sum<<endl<<endl<<endl;

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌Studentmassage类﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

class Studentmassage

{

public:

Studentmassage();

~Studentmassage();

void ShowMenu();

void Find();

void Save();

void ModifyItem();

void RemoveItem();

void Swap(Student *,Student *);

void Sort();

//void Unpass();

int ListCount();

//void Average();

void Display()

{

for(Student * p=Head->Next;p!=End;p=p->Next)

p->Show();

cout<<"输入任意字符!继续……";

getch();

}

void AddItem()

{

End->Input();

End->Next=new Student;

End=End->Next;

cout<<"添加成功!"<<endl;

cout<<"输入任意字符!继续……";

getch();

}

private:

Student * Head,* End;

ifstream in;

ofstream out;

Student *FindItem(char * name)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->name,name))return p;

return NULL;

}

Student *FindID(char * Id)

{

for(Student * p=Head;p->Next!=End;p=p->Next)//匹配成功则返回上一个指针,不成功就返回空

if(!strcmp(p->Next->Id,Id))return p;

return NULL;

}

};

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌构造函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

Studentmassage::Studentmassage()

{

Head=new Student;

Head->Next=new Student;

End=Head->Next;

in.open("sort.txt");

if(!in)

cout<<"这是一个新系统,无学生信息。请先输入。"<<endl;

else

{

while(!in.eof())

{

End->ReadFile(in);

if(End->name[0]=='\0')break;

End->Next=new Student;

End=End->Next;

}

in.close();

cout<<"\t\t读取学生信息成功!"<<endl;

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌析构函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

Studentmassage::~Studentmassage()

{

Save();

for(Student * temp;Head->Next!=End;)

{

temp=Head->Next;

Head->Next=Head->Next->Next;

delete temp;

}

delete Head,End;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌菜单﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::ShowMenu()

{

cout<<"********************************************************************************"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓〓 ☆ 学 生 成 绩 管 理 系 统 ☆ 〓〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓★★★★★ ★★★★★★★ ★★★★★〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 1.增加学生成绩 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 2.显示学生成绩 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 3.排序统计成绩 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 4.查找学生成绩 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 5.删除学生成绩 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 6.修改学生信息 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 0.安全退出系统 ☆ ★〓〓〓〓〓〓〓〓〓"<<endl;

cout<<"\n\t\t\n\t\t请选择:";

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌查找函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Find()

{

char name[20] ,Id[10];

int x;

Student * p=NULL;

cout<<"\n\t\t*********************************\n";

cout<<"\t\t※ 1.按学生的姓名查找\n\t\t※ 2.按学生学号查找";

cout<<"\n\t\t*********************************\n请选择:";

cin>>x;

switch(x)

{

case 1:{cout<<"\t\t请输入要查找的学生的姓名:";cin>>name;

if(p=FindItem(name))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到该姓名的学生!"<<'\n'<<endl;

cout<<"输入任意字符!继续……";

getch();

}

}break;

case 2:

{

cout<<"\t\t请输入要查找的学生的学号:";cin>>Id;

if(p=FindID(Id))

{

p->Next->Show();

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到该学好的学生!"<<'\n'<<endl;

cout<<"输入任意字符!继续……";

getch();

}

}break;

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌修改信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::ModifyItem() //修改信息

{

char name[20];

Student * p=NULL;

cout<<"\t\t请输入要修改的人的姓名:";cin>>name;

if(p=FindItem(name))

{

cout<<"\t\t已找到学生的信息,请输入新的信息!"<<endl;

p->Next->Input();

cout<<"修改成功!"<<endl;

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到!"<<endl;

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌删除信息﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::RemoveItem() // 删除信息

{

char name[20];

Student * p=NULL,*temp=NULL;

cout<<"\t\t请输入要删除的学生的姓名:"<<endl;cin>>name;

if(p=FindItem(name))

{

temp=p->Next;

p->Next=p->Next->Next;

delete temp;

cout<<"\t\t删除成功!"<<endl;

cout<<"输入任意字符!继续……";

getch();

}

else

{

cout<<"\t\t没有找到!"<<endl;

cout<<"输入任意字符!继续……";

getch();

}

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Swap(Student *p1, Student *p2)//交换两个combox变量的数据域

{

Student *temp=new Student;

strcpy(temp->name,p1->name);

strcpy(temp->Id,p1->Id);

temp->Cnum=p1->Cnum;

temp->Mnum=p1->Mnum;

temp->Enum=p1->Enum;

temp->sum=p1->sum;

strcpy(p1->name,p2->name);

strcpy(p1->Id,p2->Id);

p1->Cnum=p2->Cnum;

p1->Mnum=p2->Mnum;

p1->Enum=p2->Enum;

p1->sum=p2->sum;

strcpy(p2->name,temp->name);

strcpy(p2->Id,temp->Id);

p2->Cnum=temp->Cnum;

p2->Mnum=temp->Mnum;

p2->Enum=temp->Enum;

p2->sum=temp->sum;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int Studentmassage::ListCount()//统计当前链表的记录总数,返回一个整数

{

if(! Head)

return 0;

int n=0;

for(Student * p=Head->Next;p!=End;p=p->Next)

{

n++;

}

return n;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Sort()//对当前链表进行排序

{

cout <<"Sorting..."<<endl;

Student *p=NULL,*p1=NULL,*k=NULL;

int n=Studentmassage::ListCount();

if(n<2)

return;

for(p=Head->Next;p!=End;p=p->Next)

for(k=p->Next;k!=End;k=k->Next)

{

if(p->sum>k->sum)

{

Studentmassage::Swap(p,k);

}

}

cout <<"排序完成!"<<endl;

getch();

return;

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌保存函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

void Studentmassage::Save()

{

out.open("sort.txt");

for(Student *p=Head->Next;p!=End;p=p->Next)

out<<p->name<<"\t"<<p->Id<<"\t"<<p->Cnum<<"\t"

<<p->Mnum<<"\t"<<p->Enum<<"\t"<<p->sum<<'\n';

out.close();

}

//﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌主函数﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌

int main()

{

int x,i=0;

bool quit=false;

cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§"<<endl;

for(i=0;i<3;i++)

cout<<"\t\t◎\t\t\t\t\t\t ◎"<<endl;

cout<<"\t\t◎★★★★【 欢迎进入学生成绩管理系统 】★★★★◎"<<endl;

for(i=0;i<3;i++)

cout<<"\t\t◎\t\t\t\t\t\t ◎"<<endl;

cout<<"\t\t§§§§§§§§§§§§§§§§§§§§§§§§§§\n"<<endl;;

Studentmassage Grade;

cout<<"按任意键开始……";

getch();

while(!quit)

{

system("cls");

Grade.ShowMenu();

cin>>x;

switch(x)

{

case 0:quit=true;break;

case 1:Grade.AddItem();break;

case 2:Grade.Display();break;

case 3:Grade.Sort();break;

case 4:Grade.Find();break;

case 5:Grade.RemoveItem();break;

case 6:Grade.ModifyItem();break;

}

}

return 0;

}

怎样用C语言做软件

你没听说 C是基础!

学完C后学其他语言很容易,

特别是 做 软件 要用到的 C++ ,C# 啊,

建议你现在去 C++,C# ,因为他们是开发 软件的,用C做窗口的话太麻烦了

现在学他们 很简单,很简单,很简单了,因为你学完了C

还有 学学 VB ,VC, MFC 这类的

还有,学学 操作系统吧,,,TCP/IP,这些 也是 基础!

转载请注明出处51数据库 » 怎么用c语言做软件界面设计 C语言开发的软件界面怎么设计的啊

软件
前端设计
程序设计
Java相关