数据处理软件有哪些

数据处理软件有哪些,第1张

数据分析处理软件的确有很多种,适合不同类型的人员。

Excel:还是很普遍的,大部分使用,只是数据一大就比较慢,而且写函数比较麻烦,学好很重要;

BDP个人版:偏向数据可视化分析,图表类型有30多种,适合数据小白使用;有多表关联、追加合并等合表处理功能,性能挺快的~

SAS、SPSS:会涉及到一些数据建模的东西,相对比较难。Excel:普遍适用,既有基础,又有中高级。中级一般用Excel透视表,高级的用Excel VBA。

hihidata:比较小众的数据分析工具。三分钟就可以学会直接上手。无需下载安装,直接在线就可以使用。

MARLAB:建立统计与数学模型,但是比较难学,很难上手。

Eview:比较小众,建立一些经济类的模型还是很有用的。计量经济学中经常用到。

各种BI与报表工具:tableau,QlikView,海致BDP等。

#include#include#include/------------数据区--------/intSIZE=2;structSpot{charid[10];//景点编号charname[20];//景点名称charaddress[50];//景点地址floatcost;//费用};structSpotscenery[20];charsub_id[10];//用于储存要查询、修改、删除景点的编号/-----------函数声明区--------/voidInput(Spotscenery[],intSIZE);//录入函数voidDel(Spotscenery[],charsub_id[],int&SIZE);//删除函数voidAlter(Spotscenery[],charsub_id[],intSIZE);//修改函数voidOutput(Spotscenery[],intSIZE);//显示函数voidSelect(Spotscenery[],charsub_id[],intSIZE);//查询函数voidCount(Spotscenery[],intSIZE);//统计函数voidExit();//退出函数/------------函数定义区-----------/voidInput(Spotscenery[10],intSIZE){inti;printf("pleaseinput\n");printf("------------------------------------------\n");for(i=0;i

using System;

using SystemData;

using SystemConfiguration;

using SystemWeb;

using SystemWebSecurity;

using SystemWebUI;

using SystemWebUIWebControls;

using SystemWebUIWebControlsWebParts;

using SystemWebUIHtmlControls;

using Excel = MicrosoftOfficeInteropExcel;

//

/// <summary>

/// InsertPictureToExcel 的摘要说明

/// </summary>

public class InsertPictureToExcel

{

private ExcelApplication m_objExcel = null;

private ExcelWorkbooks m_objBooks = null;

private Excel_Workbook m_objBook = null;

private ExcelSheets m_objSheets = null;

private Excel_Worksheet m_objSheet = null;

private ExcelRange m_objRange = null;

private object m_objOpt = SystemReflectionMissingValue;

//

/// <summary>

/// 打开没有模板的 *** 作。

/// </summary>

public void Open()

{

thisOpen(StringEmpty);

}

//

/// <summary>

/// 功能:实现Excel应用程序的打开

/// </summary>

/// <param name="TemplateFilePath">模板文件物理路径</param>

public void Open(string TemplateFilePath)

{

//打开对象

m_objExcel = new ExcelApplication();

m_objExcelVisible = false;

m_objExcelDisplayAlerts = false;

if (m_objExcelVersion != "110")

{

//MessageBoxShow("您的 Excel 版本不是 110 (Office 2003), *** 作可能会出现问题。");

m_objExcelQuit();

return;

}

m_objBooks = (ExcelWorkbooks)m_objExcelWorkbooks;

if (TemplateFilePathEquals(StringEmpty))

{

m_objBook = (Excel_Workbook)(m_objBooksAdd(m_objOpt));

}

else

{

m_objBook = m_objBooksOpen(TemplateFilePath, m_objOpt, m_objOpt, m_objOpt, m_objOpt,

m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt);

}

m_objSheets = (ExcelSheets)m_objBookWorksheets;

m_objSheet = (Excel_Worksheet)(m_objSheetsget_Item(1));

m_objExcelWorkbookBeforeClose += new ExcelAppEvents_WorkbookBeforeCloseEventHandler(m_objExcel_WorkbookBeforeClose);

}

private void m_objExcel_WorkbookBeforeClose(ExcelWorkbook m_objBooks, ref bool _Cancel)

{

//MessageBoxShow("保存完毕!");

}

//

/// <summary>

/// 将插入到指定的单元格位置。

/// 注意:必须是绝对物理路径

/// </summary>

/// <param name="RangeName">单元格名称,例如:B4</param>

/// <param name="PicturePath">要插入的绝对路径。</param>

public void InsertPicture(string RangeName, string PicturePath)

{

m_objRange = m_objSheetget_Range(RangeName, m_objOpt);

m_objRangeSelect();

ExcelPictures pics = (ExcelPictures)m_objSheetPictures(m_objOpt);

picsInsert(PicturePath, m_objOpt);

}

//

/// <summary>

/// 将插入到指定的单元格位置,并设置的宽度和高度。

/// 注意:必须是绝对物理路径

/// </summary>

/// <param name="RangeName">单元格名称,例如:B4</param>

/// <param name="PicturePath">要插入的绝对路径。</param>

/// <param name="PictuteWidth">插入后,在Excel中显示的宽度。</param>

/// <param name="PictureHeight">插入后,在Excel中显示的高度。</param>

public void InsertPicture(string RangeName, string PicturePath, float PictuteWidth, float PictureHeight)

{

m_objRange = m_objSheetget_Range(RangeName, m_objOpt);

m_objRangeSelect();

float PicLeft, PicTop;

PicLeft = ConvertToSingle(m_objRangeLeft);

PicTop = ConvertToSingle(m_objRangeTop);

m_objSheetShapesAddPicture(PicturePath, MicrosoftOfficeCoreMsoTriStatemsoFalse,

MicrosoftOfficeCoreMsoTriStatemsoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight);

}

//

/// <summary>

/// 将Excel文件保存到指定的目录,目录必须事先存在,文件名称不一定要存在。

/// </summary>

/// <param name="OutputFilePath">要保存成的文件的全路径。</param>

public void SaveFile(string OutputFilePath)

{

m_objBookSaveAs(OutputFilePath, m_objOpt, m_objOpt,

m_objOpt, m_objOpt, m_objOpt, ExcelXlSaveAsAccessModexlNoChange,

m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt);

thisClose();

}

//

/// <summary>

/// 关闭应用程序

/// </summary>

private void Close()

{

m_objBookClose(false, m_objOpt, m_objOpt);

m_objExcelQuit();

}

//

/// <summary>

/// 释放所引用的COM对象。注意:这个过程一定要执行。

/// </summary>

public void Dispose()

{

ReleaseObj(m_objSheets);

ReleaseObj(m_objBook);

ReleaseObj(m_objBooks);

ReleaseObj(m_objExcel);

SystemGCCollect();

SystemGCWaitForPendingFinalizers();

}

//

/// <summary>

/// 释放对象,内部调用

/// </summary>

/// <param name="o"></param>

private void ReleaseObj(object o)

{

try

{

SystemRuntimeInteropServicesMarshalReleaseComObject(o);

}

catch { }

finally { o = null; }

}

}

ORG 0H 程序起始地址

ACALL ZI 跳转到zi

SJMP $

ZI: MOV R0,#31H 把31H给R0

MOV 30H,#15 把数组个数15给30H单元

LOOP: MOV A,@R0 把地址31H中的数据给A寄存器

JB ACC0,LOOP1 判断寄存器A中的最低位是0 还是1,是1就是奇数,是0就是0偶数。是奇数的话跳到LOOP1,是偶数的话顺序执行。。。这语句判断奇偶数

INC 41H 偶数个数加1

AJMP Jie_Shu

LOOP1: INC 40H 奇数个数加1,,也就是这一句将奇数个数存于40H单元

Jie_Shu: INC R0 地址加1,31H,32H,33H,34H

DJNZ 30H,LOOP 看看是不是到数据元素个数了了,到了就结束了,否则返回去继续执行

RET

END

#include<stdioh>

#include<stdlibh>

#include<malloch>

#define size 10

int getmax(int nums);//获取最大值地址

int getmin(int nums);//获取最小值地址

float getave(int nums);//获取平均值

int getsum(int nums);//获取总和

int sx(int nums);//返回升序后的数组

int jx(int nums);//返回降序后的数组

int findnum(int nums);//找到数值返回相同数值对应的第一个地址,没有找到返回NULL

void prfnums(int nums);//打印数组

int main()

{

    //最大值、最小值和平均值、总和、排序、查找

    int i,nums[size],ans,max,min,sum,jxns=NULL,sxns=NULL,num;

    float ave;

    char anc;

    printf("输入10个数字:");

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

        scanf("%d",&nums[i]);

    max=getmax(nums);

    min=getmin(nums);

    ave=getave(nums);

    sum=getsum(nums);

    jxns=jx(nums);

    sxns=sx(nums);

    while(1)

    {

        system("cls");

        printf("输入的数组为:");

        prfnums(nums);

        printf("请选择处理方案:\n");

        printf("1、求最大值。\n2、求最小值。\n3、求平均值。\n4、求总和。\n5、降序排列。\n6、升序排列。\n7、查找指定值。\n");

        scanf("%d",&ans);

        switch(ans)

        {

            case 1:printf("最大值为第%d个元素:%d\n",max-nums+1,max);

                   break;

            case 2:printf("最小值为第%d个元素:%d\n",min-nums+1,min);

                   break;

            case 3:printf("平均值为:%f\n",ave);

                   break;

            case 4:printf("总和为:%d\n",sum);

                   break;

            case 5:printf("降序排列后的数组为:");

                   prfnums(jxns);

                   break;

            case 6:printf("升序排列后的数组为:");

                   prfnums(sxns);

                   break;

            case 7:num=findnum(nums);

                   if(num!=NULL)

                        printf("第一个对应的数值位置在数组第%d个元素\n",num-nums+1);

                   else

                        printf("未找到对应数值\n");

                   break;

        }

        while(1)

        {

            printf("Continue?Y/N\n");

            getchar();

            scanf("%c",&anc);

            if(anc=='N')

                return 0;

            if(anc=='Y')

                break;

            else

                printf("输入不符合要求,重新回答\n");

        }

    }

    return 0;

}

void prfnums(int nums)//打印数组

{

    int i;

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

        printf("%d ",nums[i]);

    printf("\n");

}

int getmax(int nums)//获取最大值地址

{

    int i,max=&nums[0];

    for(i=1;i<size;i++)

    {

        if(max<nums[i])

            max=&nums[i];

    }

    return max;

}

int getmin(int nums)//获取最小值地址

{

    int i,min=&nums[0];

    for(i=1;i<size;i++)

    {

        if(min>nums[i])

            min=&nums[i];

    }

    return min;

}

float getave(int nums)//获取平均值

{

    float ave;

    ave=(float)getsum(nums)/size;

    return ave;

}

int getsum(int nums)//获取总和

{

    int i,sum=0;

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

    {

        sum=sum+nums[i];

    }

    return sum;

}

int sx(int nums)//返回升序后的数组

{

    int i,j,numSave=NULL;

    numSave=(int )malloc(sizeof(int)size);

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

        numSave[i]=nums[i];

    for(i=0;i<size-1;i++)

        for(j=i+1;j<size;j++)

        {

            if(numSave[i]>numSave[j])

            {

                numSave[i]^=numSave[j];

                numSave[j]^=numSave[i];

                numSave[i]^=numSave[j];

            }

        }

    return numSave;

}

int jx(int nums)//返回降序后的数组

{

    int i,j,numSave=NULL;

    numSave=(int )malloc(sizeof(int)size);

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

        numSave[i]=nums[i];

    for(i=0;i<size-1;i++)

        for(j=i+1;j<size;j++)

        {

            if(numSave[i]<numSave[j])

            {

                numSave[i]^=numSave[j];

                numSave[j]^=numSave[i];

                numSave[i]^=numSave[j];

            }

        }

    return numSave;

}

int findnum(int nums)//找到数值返回相同数值对应的第一个地址,没有找到返回NULL

{

    int i,num;

    printf("输入你要查找的数值:");

    scanf("%d",&num);

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

        if(nums[i]==num)

            return &nums[i];

    return NULL;

}

以上就是关于数据处理软件有哪些全部的内容,包括:数据处理软件有哪些、会使用流程控制语句和数组,编写出进行数据处理的程序,并能够上机调试和运行。、编写excel数据处理程序,Java、C# 都可以。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9327531.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存