C语言简易计算器

本人的一个简单的作品(学校作业),第一次发文,由于本人水平不足,所以未加过多注释,好多地方也达不到最好请大家多多指正。

简易计算器,可以进行简单的加减乘除运算,也可以进行矩阵的复杂运算(如矩阵和差,求逆矩阵等)和三角函数的计算等。

源代码如下:

#define M 20
#define N 20
#include 
#include 
#include 
#include 
#include 
void jianyimenu();
void juzhenmenu();
void sanjiaohanshumenu();
void twodimesionalarray();
void nijuzhen();
void shuchengjuzhen();
void zhuanzhijuzhen();
void shangsanjiaohua();
void sinhanshu();
void coshanshu();
void tanhanshu();
int main()
{
    while(1)
    {
        int xuanxiang;
        printf("--------------------------------\n");
        printf("*      欢迎使用科学计算器      *\n");
        printf("--------------------------------\n");
        printf("*     请选择你想使用的功能:    *\n");
        printf("*      1 简易功能计算器        *\n");
        printf("*      2 矩阵计算器            *\n");
        printf("*      3 三角函数计算器        *\n");
        printf("*      4 退出程序              *\n");
        printf("--------------------------------\n");
        printf("请输入选项:");
        scanf("%d",&xuanxiang);
        switch(xuanxiang)
        {
            case 1:
            {
                jianyimenu();
                break;
            }
            case 2:
            {
                juzhenmenu();
                break;
            }
            case 3:
            {
                sanjiaohanshumenu();
                break;
            }
            case 4:
                printf("----------感谢您使用本系统----------");
                exit(0);
            default:
                printf("\n-----选择错误,请重试-------\n");
                break;
        }
    }
}
void jianyimenu()
{
    int select;
    printf("--------------------------------\n");
    printf("*      欢迎使用简易计算器      *\n");
    printf("--------------------------------\n");
    printf("*     请选择你想使用的功能:    *\n");
    printf("*           1 加法             *\n");
    printf("*           2 减法             *\n");
    printf("*           3 乘法             *\n");
    printf("*           4 除法             *\n");
    printf("*           5 取模             *\n");
    printf("*           6 返回主菜单       *\n");
    printf("--------------------------------\n");
	printf("输入菜单项:\n");
	scanf("%d",&select);
	switch (select)
	{
	case 1:
		{
			float num1,num2;
			printf("做加法。\n");
			printf("输入两个数,逗号分隔。\n");
			scanf("%f,%f",&num1,&num2);
			printf("%.2f+%.2f=%.2f\n",num1,num2,num1+num2);
			break;
		}
	case 2:
		{
			float num1,num2;
			printf("做减法。\n");
			printf("输入两个数,逗号分隔。\n");
			scanf("%f,%f",&num1,&num2);
			printf("%.2f-%.2f=%.2f\n",num1,num2,num1-num2);
			break;
		}
	case 3:
		{
			float num1,num2;
			printf("做乘法。\n");
			printf("输入两个数,逗号分隔。\n");
			scanf("%f,%f",&num1,&num2);
			printf("%.2f*%.2f=%.2f\n",num1,num2,num1*num2);
			break;
		}
	case 4:
		{
			float num1,num2;
			printf("做除法。\n");
			printf("输入两个数,逗号分隔。\n");
			scanf("%f,%f",&num1,&num2);
			printf("%.2f/%.2f=%.2f\n",num1,num2,num1/num2);
			break;
		}
	case 5:
		{
			float num1,num2;
			printf("取模运算。\n");
			printf("输入两个数,逗号分隔。\n");
			scanf("%f,%f",&num1,&num2);
			printf("%.2f%%%.2f=%.2f\n",num1,num2,fmod(num1,num2));
			break;
		}
    case 6:
        {
            break;
        }
	}
	return 0;
}
void juzhenmenu()
{
    int select;
    printf("--------------------------------\n");
    printf("*      欢迎使用矩阵计算器      *\n");
    printf("--------------------------------\n");
    printf("*     请选择你想使用的功能:    *\n");
    printf("*      1 求逆矩阵              *\n");
    printf("*      2 二维矩阵的和差计算    *\n");
    printf("*      3 矩阵的上三角化        *\n");
    printf("*      4 数乘矩阵              *\n");
    printf("*      5 转置矩阵              *\n");
    printf("*      6 返回主菜单            *\n");
    printf("--------------------------------\n");
	printf("输入菜单项:\n");
	scanf("%d",&select);
	switch (select)
	{
    case 1:
    {
        nijuzhen();
        break;
    }
	case 2:
	    {
	        twodimesionalarray();
	        break;
	    }
    case 3:
		{
		    shangsanjiaohua();
		    break;
		}
    case 4:
        {
            shuchengjuzhen();
            break;
        }
    case 5:
        {
            zhuanzhijuzhen();
            break;
        }
    case 6:
        {
            break;
        }
	}
	return 0;
}
void nijuzhen()
{
    float A[M][N];
    float B[M][N];
    float C[M][N];
    int i,j,m,n,p,q;
    float y=1.0;
    float a[M][2*M];
    float b[N][2*N];
    float t,x;
    int k,T;
    printf("输入方阵的维数:\n"); //请输入方阵,即行和列相等的矩阵。
    scanf("%d",&T);
    printf("请输入矩阵:\n");
    for(i=0;i

感谢阅读,让我们一起加油~

你可能感兴趣的:(C语言小程序,c语言)