❶ c语言用点阵的形式在字符界面上显示数字,有图
❷ C语言图形界面 怎么输出一个字符
如果要在DOS屏幕输出C语言是printf,C++是cout<<ch;如果要在MFC输出可以用弹出对话框的方式MessageBox(ch,NULL,MB_OK)C语言的图形界面就是MFC,图形界面上不能打印输出,要么以文本形式输出到文件里保存,要么以弹出警告框方式输出,最常用的是弹出警告框
❸ c语言如何编写界面程序
一、C语言中要做图形界面,首先需要设置为图形模式,确定显卡类型,对屏幕进行初始化等等。
二、相关的函数如下:
1. detectgraph() 显示卡检测函数
2. initgraph() 图形初始化函数
3. getdrivername() 获取图形驱动程序名的指针
4. getgraphmode() 获取图形模式函数
5. getmoderange()获取模式值范围函数
6. getmaxmode()获取最大显示模式函数
7. getmodename()获取显示模式名函数
8. graphdefaults()图形设置复位缺省值函数
9. setgraphmode() 设置图形模式函数
10. restorecrtmode() 恢复文本显示模式函数
11. graphresult() 图形操作结果函数
12. grpaherrormsg() 图形错误信息函数
13. setgraphbufsize()设置图形缓冲区大小函数
14. setactivepage() 设置可输出显示页函数
15. setvisualpage() 设置可见显示页数
16. closegraph()关闭图形模式函数
❹ C语言怎么做界面
空窗口:
#include<windows.h>
/*所有的窗口输出到这里去*/
LRESULTCALLBACKWndProc(HWNDhwnd,UINTMessage,WPARAMwParam,LPARAMlParam){
switch(Message){
/*停止后,告诉主线程停止*/
caseWM_DESTROY:{
PostQuitMessage(0);
break;
}
/*所有其他消息(很多人)都使用默认程序处理*/
default:
returnDefWindowProc(hwnd,Message,wParam,lParam);
}
return0;
}
/*Win32GUI程序的主要功能:执行从这里开始*/
intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){
WNDCLASSEXwc;/*窗口的属性结构*/
HWNDhwnd;/*"句柄"一个窗口的标识符*/
MSGMsg;/*所有消息的临时位置*/
/*修改结构和设置的东西*/
memset(&wc,0,sizeof(wc));
wc.cbSize =sizeof(WNDCLASSEX);
wc.lpfnWndProc =WndProc;/*将发送消息的地方*/
wc.hInstance =hInstance;
wc.hCursor =LoadCursor(NULL,IDC_ARROW);
/*白色,COLOR_WINDOW是系统定义的颜色值,其数值是5*/
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
wc.lpszClassName="WindowClass";
wc.hIcon =LoadIcon(NULL,IDI_APPLICATION);/*载入一个标准图标*/
wc.hIconSm =LoadIcon(NULL,IDI_APPLICATION);/*使用名称“A”来作为该项目图标*/
if(!RegisterClassEx(&wc)){
MessageBox(NULL,"WindowRegistrationFailed!","Error!",MB_ICONEXCLAMATION|MB_OK);
return0;
}
hwnd=CreateWindowEx(WS_EX_CLIENTEDGE,"WindowClass","Caption",WS_VISIBLE|WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,/*x*/
CW_USEDEFAULT,/*y*/
640,/*宽度*/
480,/*高度*/
NULL,NULL,hInstance,NULL);
if(hwnd==NULL){
MessageBox(NULL,"WindowCreationFailed!","Error!",MB_ICONEXCLAMATION|MB_OK);
return0;
}
/*
所有的输入处理和发送到窗口过程。
注意,这个块代码流,直到它接收到的东西,
所以回路不会产生不合理的高CPU使用率。
*/
while(GetMessage(&Msg,NULL,0,0)>0)/*如果没有收到任何错误…*/
{
TranslateMessage(&Msg);/*如果存在翻译关键码字符*/
DispatchMessage(&Msg);/*发送它到WndProc*/
}
returnMsg.wParam;
}
❺ 如何在c语言字符界面中,直接把输入的语句变成命令来执行
1、可以自己搜索下载个C语言解释器,C语言本身是一种编译语言,需要编译器、链接器共同工作,换句话说,实际上C语言就是C语言编译器的功能,如果用户开发一种解释器能实现C语言的自身的功能,也可以将C语言当成一种解释语言。
2、可以自行开发C语言解释器,但是这不是一件轻松的事情,拿来练练手,熟悉一下编译原理和数据结构的基础知识还可以。真开发这样高效的解释器是一件并不轻松的事情。
❻ 求帮忙一个C语言编程:设计字符界面 多种方法求最大字段和问题
没仔细看,但肯定是死循环了。要么改用do-while结构,把scanf语句放入while循环体里,否则就把while条件改为真。
❼ linux字符界面c语言编写包是哪个
1,先打开终端,就是通常是bash。 2,命令:gcc -o a.out man.c a.out是生成的可执行文件,main.c是你代码存的文件。 3,命令:./a.out 注意:一个小点,然后才是斜杠,意思是当前目录下的a.out 4,你忘了#include 了
❽ C语言 图形界面 怎么输出一个字符
如果要在DOS屏幕输出C语言是printf,C++是cout<<ch;如果要在MFC输出可以用弹出对话框的方式MessageBox(ch,NULL,MB_OK)
C语言的图形界面就是MFC,图形界面上不能打印输出,要么以文本形式输出到文件里保存,要么以弹出警告框方式输出,最常用的是弹出警告框,可以参考MSDN的MessageBox函数
❾ C语言漂亮字符图案
最简单的动态欢迎界面
就是定时打印字符.
例如:
sleep(1);睡一秒
printf("***");打印到屏幕上
具体怎么个炫法,要你自己去设计.
❿ 求帮忙一个C语言编程:设计字符界面学生信息管理程序
哈哈,这是我们课程设计的题,刚做不久,直接导入TC即可运行。只是恐怕不能显示中文,我们做时要下个CCDOS,并再安全模式下运行才能显示中文。
#include "stdlib.h"
#include "string.h"
#include "stdio.h"
#define NULL 0
#define Q 10
#define LEN sizeof(struct student)
struct student
{char name[Q];
char sex[Q];
long id;
int score[4];
int total;
int m_c;
struct student *next;
};
int n;
char ch[Q];
struct student *creat()
{int i;
struct student *head,*p1,*p2;
p1=p2=(struct student *)malloc(LEN);
n=0;
printf("请输入学生考试信息!\n");
printf("请在姓名处键以\"!\"结束输入。\n");
printf("姓名:");
scanf("%s",ch);
head=NULL;
while (strcmp(ch,"!")!=0)
{p1=(struct student *)malloc(LEN);
strcpy(p1->name,ch);
printf("性别:");
scanf("%s",p1->sex);
printf("准考证号(8位):");
scanf("%ld",&p1->id);
printf("数学成绩:");
scanf("%d",&p1->score[0]);
printf("物理成绩:");
scanf("%d",&p1->score[1]);
printf("英语成绩:");
scanf("%d",&p1->score[2]);
printf("C语言成绩:");
scanf("%d",&p1->score[3]);
p1->total=p1->score[0]+p1->score[1]+p1->score[2]+p1->score[3];
if(n==0)head=p1;
else p2->next=p1;
p2=p1;
n++;
printf("姓名:");
scanf("%s",ch);
}
p2->next=NULL;
return (head);
}
void output(struct student *head)
{struct student *p;
printf("-----------------------------------------------------------------------\n");
printf(" *学生考试成绩信息表*\n");
printf("-----------------------------------------------------------------------\n");
printf("准考证号 姓 名 性别 数学 物理 英语 C语言 平均分 总分\n");
printf("-----------------------------------------------------------------------\n");
p=head;
if(head!=NULL)
do{printf("%8ld %6s %4s %2d %2d %2d %2d %-.2f %3d\n",p->id,p->name,p->sex,p->score[0],p->score[1],p->score[2],p->score[3],p->total/4.0,p->total);
printf("-----------------------------------------------------------------------\n");
p=p->next;
}while(p!=NULL);
}
count(struct student *head)
{if(head==NULL)return(0);
else return(1+count(head->next));
}
struct student *insert(struct student*head)
{struct student *p1,*p2,*p3;
printf("请输入修改信息!\n");
p1=(struct student *)malloc(LEN);
printf("准考证号(8位):");
scanf("%ld",&p1->id);
printf("姓名:");
scanf("%s",p1->name);
printf("性别:");
scanf("%s",p1->sex);
printf("数学成绩:");
scanf("%d",&p1->score[0]);
printf("物理成绩:");
scanf("%d",&p1->score[1]);
printf("英语成绩:");
scanf("%d",&p1->score[2]);
printf("C语言成绩:");
scanf("%d",&p1->score[3]);
p1->total=p1->score[0]+p1->score[1]+p1->score[2]+p1->score[3];/*计算总分 */
p2=head;
if(head==NULL)
{head=p1;p1->next=NULL;}
else {while((p1->id>p2->id)&&(p2->next!=NULL))
{p3=p2;
p2=p2->next;}
if(p1->id<=p2->id)
{if(head==p2){p1->next=head;head=p1;}
else {p3->next=p1;p1->next=p2;}
}
else{p2->next=p1;p1->next=NULL;}
}
n++;
return(head);
}
struct student *delete (struct student *head,long int num)
{struct student *p1,*p2;
printf("要删除的学生准考证号为:%ld\n",num);
if(head==NULL)
{printf("这是一个空表,没有可删除的学生准考证号!\n");return(head);}
else{p1=head;
while(num!=p1->id&&p1->next!=NULL)
{p2=p1;p1=p1->next;}
if(num==p1->id)
{if(p1==head) head=p1->next;
else p2->next=p1->next;
printf("删除准考证号为%ld的学生\n",num);
n--;}
else printf("没找到准考证号为%ld的学生!\n",num);
return(head);
}
}
struct student *find(struct student *head,long int num)
{struct student *p1;
printf("要查找的学生准考证号为:%ld\n",num);
if(head==NULL)
{printf("这是一个空表,没有要查找的学生准考证号!\n");return(head);}
else{p1=head;
while(num!=p1->id&&p1->next!=NULL)
{p1=p1->next;}
if(num==p1->id)
{ printf("------------------------------------------------------------------------------\n");
printf("准考证号 姓 名 性别 数学 物理 英语 C语言 平均分 总分 名次\n");
printf("------------------------------------------------------------------------------\n");
printf("%8ld %6s %4s %2d %2d %2d %2d %-.2f %3d %-2d\n",p1->id,p1->name,p1->sex,p1->score[0],p1->score[1],p1->score[2],p1->score[3],p1->total/4.0,p1->total,p1->m_c);
printf("------------------------------------------------------------------------------\n");
}
else printf("没找到准考证号为%ld的学生!\n",num);
return(head);
}
}
paixu(struct student *head)
{int i,k,m,j;
struct student *p1,*p2,*p[Q];
m=count(head);
if(head==NULL)
{printf("这是一个空表,请先输入考生成绩!\n");}
else {printf("------------------------------------------------------------------------------\n");
printf(" *学 生 考 试 成 绩 统 计 表*\n");
printf("------------------------------------------------------------------------------\n");
printf("准考证号 姓 名 性别 数学 物理 英语 C语言 平均分 总分 名次\n");
printf("------------------------------------------------------------------------------\n");
p1=head;
for(k=0;k<m;k++)
{p[k]=p1;p1=p1->next;}
for(k=0;k<m-1;k++)
for(j=k+1;j<m;j++)
if(p[k]->total<p[j]->total)
{p2=p[k];p[k]=p[j];p[j]=p2;}
}
for(i=0;i<m;i++)
{printf("%8ld %6s %4s %2d %2d %2d %2d %-.2f %3d %-2d\n",p[i]->id,p[i]->name,p[i]->sex,p[i]->score[0],p[i]->score[1],p[i]->score[2],p[i]->score[3],p[i]->total/4.0,p[i]->total,i+1);
printf("------------------------------------------------------------------------------\n");/*78个“-”*/
p[i]->m_c=i+1;
}
}
dkarg(struct student *head)
{struct student *p1;
int k,m;
float arg1=0,arg2=0,arg3=0,arg4=0;
m=count(head);
p1=head;
for(k=0;k<m;k++)
{arg1+=p1->score[0];
arg2+=p1->score[1];
arg3+=p1->score[2];
arg4+=p1->score[3];
p1=p1->next;}
arg1/=m;arg2/=m;arg3/=m;arg4/=m;
printf(" *全班单科成绩平均分*\n");
printf("------------------------------------------------------------------------------\n");
printf("数学平均分:%.2f 物理平均分:%.2f 英语平均分:%.2f C语言平均分:%.2f \n",arg1,arg2,arg3,arg4);
printf("------------------------------------------------------------------------------\n");
}
void main()
{int k;
struct student *head;
long i;
printf("<><><><><><><><><><><><><><>\n");
printf("|学 生 成 绩 系 统 主 菜 单 界 面|\n");
printf("| 1.输入学生成绩 |\n");
printf("| 2.显示学生成绩 |\n");
printf("| 3.修改学生成绩 |\n");
printf("| 4.删除学生成绩 |\n");
printf("| 5.排序学生成绩 |\n");
printf("| 6.查找学生成绩 |\n");
printf("| 7.安全退出系统 |\n");
printf("| ->学生成绩管理程序 设计者:陆晓成<- |\n");
printf("<><><><><><><><><><><><><><>\n");
head=creat();
do{printf("<><><><><><><><><><><><><><>\n");
printf("|学 生 成 绩 系 统 主 菜 单 界 面|\n");
printf("| 1.输入学生成绩 |\n");
printf("| 2.显示学生成绩 |\n");
printf("| 3.修改学生成绩 |\n");
printf("| 4.删除学生成绩 |\n");
printf("| 5.排序学生成绩 |\n");
printf("| 6.查找学生成绩 |\n");
printf("| 7.安全退出系统 |\n");
printf("| ->学生成绩管理程序 设计者:陆晓成<- |\n");
printf("<><><><><><><><><><><><><><>\n");
printf("请输入选择号(1--7):");
scanf("%d",&k);
switch(k)
{ case 1:head=creat();break;
case 2:output(head);printf("参加考试的学生人数为:%d人\n",count(head));printf("请按任意键显示主菜单!\n");getch();break;
case 3:head=insert(head);output(head);printf("请按任意键显示主菜单!\n");getch(); break;
case 4:printf("请输入要删除的准考证号(8位):");scanf("%ld",&i);head=delete(head,i);output(head);printf("请按任意键显示主菜单!\n");getch(); break;
case 5:paixu(head);dkarg(head);printf("参加考试的学生人数为:%d人\n",count(head));printf("请按任意键显示主菜单!\n");getch();break;
case 6:printf("请输入要查找的准考证号(8位):");scanf("%ld",&i);head=find(head,i);printf("请按任意键显示主菜单!\n");getch();break;
default:break;
}
}while(k!=7);
}