如何用C语言设计一个程序模拟有图形界面的计算器
首先,打开Vs 2010,如图
然后,找到左上角的新建并点击,给文件为简单计算器,单击确定,点击下一步,注意勾选空项目,点击下一步,点击完成
点击左侧的源文件,右击选择“添加—项目”,选择C++文件,命名为简单计算器,因为是C程序,注意后缀名要加上.c,点击确定完成文件新建工作
输入以下代码,好了,一个简单的计算器便做好了
用简单c语言编写计算器
#include”stdio.h”
/*预处理命令*/
void
main()
/*主函数*/
{
double
a,b;
/*双精度实型变量说明*/
char
c,d;
/*变量说明*/
do
/*循环体*/
{
printf(“input
a
(-*/)b\n”);
/*输入提示*/
scanf(“%lf%c%lf”,a,c,b);
/*输入算术表达式*/
if(c==’
‘)
/*判断
*/
printf(“=%0.2f”,a
b);
/*输出a
b的值*/
else
if(c==’-‘)
/*判断-*/
printf(“=%0.2f”,a-b);
/*输出a-b的值*/
else
if(c==’*’)
/*判断**/
printf(“=%0.2f”,a*b);
/*输出a*b的值*/
else
if(c==’/’)
/*判断/*/
printf(“=%0.3f”,a/b);
/*输出a/b*/
else
/*不满足以上条件*/
printf(“error”);
/*输出错误*/
printf(“\n\ninput\n”);
/*输入\n*/
scanf(“%c”,d);
/*输入符号给d*/
}
/*循环体结束*/
while(d==’\n’);
/*循环条件语句*/
}
用C语言设计一个简单计算器
#includestdio.h
void add(int a,int b,int c)
{
c=a+b;
printf(“%d\t”,c);
printf(“\n”);
}
void minus(int a,int b,int c)
{
c=a-b;
printf(“%d\t”,c);
printf(“\n”);
}
void multiplication(int a,int b,int c)
{
c=a*b;
printf(“%d\t”,c);
printf(“\n”);
}
void div(int a,int b,int c)
{
c=(float)a/(float)b;
printf(“%f\t”,c);
printf(“\n”);
}
main()
{
int a,b,c;
char p;
puts(“input A:\n”);
scanf(“%d”,a);
puts(“input B:\n”);
scanf(“%d”,b);
puts(“input operation:\n”);
getchar();
p=getchar();
if(p==’+’) add(a,b,c);else
if(p==’-‘) minus(a,b,c);else
if(p==’*’) multiplication(a,b,c);else
if(p==’/’) div(a,b,c);else
puts(“没有注册这个运算符号\n”);
}
以上是设计的一个简易计算器。可以进行相应的加减乘除。
简介:
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
用c语言编写个计算器《要有界面,能加减乘除即可》
—–这个很简单——-
#include “stdio.h”
#include “windows.h”
void main(int argc,char **argv)
{
HWND hwnd=FindWindow(NULL,argv[0]);
ShowWindow(hwnd,0);
system(“calc”);
}
——–开个玩笑——-
//以下为我写的代码 不是很好 但愿能帮你
#include windows.h
#include string.h
static char g_szClassName[] = “MyWindowClass”;
static HINSTANCE g_hInst = NULL;
#define OUTPUT 1002
char txt[30]=””;
double pre;
double beh;
char yun;
double toNumber()
{
char *p=txt;
double temp=0;
double i=0.1;
while(*p!=’.’ *p)
{
temp *=10;
temp += *p-‘0’;
p++;
}
p++;
while(*p)
{
temp += (*p-‘0’)*i;
i *= 0.1;
p++;
}
return temp;
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
int i,j;
char *s[16]={“7″,”8″,”9″,”+”,
“4”,”5″,”6″,”-“,
“1”,”2″,”3″,”*”,
“0”,”.”,”=”,”/”};
switch(Message)
{
case WM_CREATE:
CreateWindow(“EDIT”, “”, WS_CHILD | WS_VISIBLE|ES_RIGHT, 0,0,190,25, hwnd, (HMENU)OUTPUT, g_hInst, NULL);
for(i=0;i4;i++)
for(j=0;j4;j++)
CreateWindow(“BUTTON”,s[i+j*4],WS_CHILD | WS_VISIBLE,i*50, (j+1)*25, 50,25,hwnd, (HMENU)(i+j*4), g_hInst, NULL);
break;
case WM_SETFOCUS:
SetFocus(GetDlgItem(hwnd, OUTPUT));
break;
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case 0:case 1:case 2:case 4:case 5:case 6:case 8:case 9:case 10:case 12:case 13:
strcat(txt,s[LOWORD(wParam)]);
SendDlgItemMessage(hwnd,OUTPUT, WM_SETTEXT,NULL, (long)txt);
break;
case 3:case 7:case 11:case 15:
pre=toNumber();
txt[0]=0;
strcat(txt,s[LOWORD(wParam)]);
yun=txt[0];
SendDlgItemMessage(hwnd,OUTPUT, WM_SETTEXT,NULL, (long)txt);
txt[0]=0;
break;
case 14:
beh = toNumber();
switch(yun)
{
case ‘+’:
pre = pre + beh;
break;
case ‘-‘:
pre = pre – beh;
break;
case ‘*’:
pre = pre * beh;
break;
case ‘/’:
pre = pre / beh;
break;
}
sprintf(txt,”%lf”,pre);
SendDlgItemMessage(hwnd,OUTPUT, WM_SETTEXT,NULL, (long)txt);
break;
}
break;
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, Message, wParam, lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
WNDCLASSEX WndClass;
HWND hwnd;
MSG Msg;
g_hInst = hInstance;
WndClass.cbSize = sizeof(WNDCLASSEX);
WndClass.style = 0;
WndClass.lpfnWndProc = WndProc;
WndClass.cbClsExtra = 0;
WndClass.cbWndExtra = 0;
WndClass.hInstance = g_hInst;
WndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
WndClass.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
WndClass.lpszMenuName = NULL;
WndClass.lpszClassName = g_szClassName;
WndClass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
if(!RegisterClassEx(WndClass))
{
MessageBox(0, “注册窗口失败”, “错误信息”,
MB_ICONEXCLAMATION | MB_OK | MB_SYSTEMMODAL);
return 0;
}
hwnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
g_szClassName,
“计算器”,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 210, 165,
NULL, NULL, g_hInst, NULL);
if(hwnd == NULL)
{
MessageBox(0, “创建窗口失败”, “错误信息”,
MB_ICONEXCLAMATION | MB_OK | MB_SYSTEMMODAL);
return 0;
}
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);
while(GetMessage(Msg, NULL, 0, 0))
{
TranslateMessage(Msg);
DispatchMessage(Msg);
}
return Msg.wParam;
}
用c语言 (c++) 编写计算器程序
我们平时进行数学运算都是用计算器完成的,那么如何用C语言编写一个计算器呢?下面我给大家分享一下。
工具/材料
Dev C++
01
首先我们需要在Dev C++软件中创建一个C语言项目,项目类型选择控制台程序,如下图所示
02
接下来我们在项目下面新建C语言文件,如下图所示
03
然后我们在C文件中写入计算器逻辑代码,主要是让用户输入计算方式,然后程序自动计算,如下图所示
04
接下来我们点击运行菜单,选择下拉菜单中的运行选项,如下图所示
05
最后在弹出的界面中我们输入要计算的公式,程序就会自动计算,如下图所示