ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:26.91KB ,
资源ID:4315634      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4315634.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(使用c语言读出Excel表格课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

使用c语言读出Excel表格课程设计.docx

1、使用c语言读出Excel表格课程设计课程设计(大作业)报告信息技术学院昆明学院课程设计(大作业)任务书姓 名: 院(系):信息技术学院专 业:计算机应用技术 学 号:任务起止日期:2011.12.24课程设计题目:简单综合成绩计算系统课程设计要求:各科成绩和综合分数加减分数保存在 excel 表格里面,请读取 excel 表格的成绩然后计算平均成绩并输出成绩报表。综合成绩的计算方法在学生手册上可以查到。 1.查看学生手册了解综合成绩计算办法。2.设计多维数组分别存储班上41个同学的智育、德育、体育、及相关的加减分。3.计算出智育平均成绩,计算出综合测评成绩。写出排序函数,分别按智育平均成绩、综

2、合测评成绩排序。4.C 语言保存计算结果到 excel 表格 ( 注:设计的时候需不断测试保证程序的正确性工作计划及安排:1到底包括哪些成绩? 2求智育的平均分及写函数。3求综合成绩及写函数。4排序。5把结果写到exce表里。 指导教师签字 年 月 日 课程设计(大作业)成绩学号: 姓名: 指导教师: 课程设计题目:简单综合成绩计算系统总结:通过本次的作业,让我更加的进一步的学习到更多关于C语言的知识,也进一步的巩固了以前所学习的东西,也能够比以前更加熟练的应用C了。也让我认识到合作精神的重要性,作为一个团队,只有大家一起相互合作相互交流才能将我们的任务做的更好。一次课题设计不仅是对我们学习的

3、知识的一种检测,也是体现我们对知识的综合能力的一种测试。在课题设计中我们充分发挥自己的应用知识的能力,将自己负责的那一部分做好,与组员们相互讨论,合作做好每一个细节。并且在这个互联网的时代,上网查找资料是并不可少的,因此在本次的课程设计中,有许多不懂的地方,我们只有通过上网查询一些资料,和老师的指导才能完成。而且对于编程,必须要有一定的耐心和毅力才能够做的,因为一个小小的错误,整个程序就不能够应行,必须耐心的找出那个错误,并改正。相信在本次的作业中每个同学都学习到了许多,不管是知识还是其他的,都会让我们每个人受益匪浅。“只要功夫深,铁杵磨成针”所以不管多难的作业,在我们的努力下与合作下,我们可

4、以完成,我们也可以做好。指导教师评语:成绩:填表时间: 指导教师签名:课程设计(大作业)报告一、题目分析简单综合成绩计算系统二、总体设计1.到底包括哪些成绩。2.求智育平均分的函数。3.求综合成绩平均分的函数。4.排序。5.把结果写到excel表里。将此上述5步小组人员内部协商分工合作。三、实验器材计算机四、制作步骤1.到底包括哪些成绩?2.求智育平均分的函数。3.求综合成绩平均分的函数。4.排序。5.把结果写到excel表了。五、程序代码1.#include stdafx.h#define N 41float zonghecj41;void zhcj(float *zhiyupj,float

5、 *deyu ,float *zhnl,float *tiyu ,int n) int i; for(i=0;in;i+) zonghecji=zhiyupji*0.55+deyui*0.25+tiyui*0.1+zhnli*0.1; int main(int argc, char* argv) int i; float zhiyupj41; float zhiyu414=85,65,80,76,66,71,77,69,65,71,75,72,58,81,77,73,65,74,75,80,66,83,82,71,68,65,62,71,80,74,76,73,82,80,70,76,76,7

6、4,75,72,65,65,71,80,80,85,81,90,90,82,84,86,85,60,75,82,85,68,75,72,80,84,72,76,65,85,69,72,80,82,81,77,90,82,77,76,58,71,68,80,60,71,68,77,68,74,75,72,94,82,71,76,74,75,76,80,66,85,77,78,66,81,72,76,68,72,75,78,80,74,76,79,81,79,81,76,60,85,71,79,78,80,75,60,62,81,75,73,82,72,76,52,65,77,76,72,81,7

7、5,77,76,89,86,82,79,80,71,76,79,80,75,72,79,82,71,76,79,90,68,82,71,82,80,75,76; for(i=0;i41;i+) zhiyupji=(zhiyui0+zhiyui1+zhiyui2+zhiyui3)/4; printf(智育平均成绩%fn,zhiyupji); float deyu41=66,70,71,86,72,68,60,75,65,67,80,77,76,65,50,69,72,75,63,65,77,75,76,60,59,60,86,79,62,90,85,73,54,66,75,73,65,80,56

8、,80,75;/德育总评分 float tiyu41=82,65,74,68,76,80,66,85,72,77,80,72,85,68,63,72,65,76,88,67,82,71,65,56,77,82,82,53,94,78,72,81,61,72,84,79,68,72,84,68,76; /体育总评分 float zhnl41=71,82,62,75,86,74,88,69,73,83,75,66,77,82,65,59,72,65,81,74,66,78,76,92,75,66,80,85,70,63,71,84,86,83,90,92,66,75,91,84,75; /综合总评

9、分 zhcj(zhiyupj,deyu ,zhnl,tiyu ,41); for(i=0;i41;i+) printf(综合成绩%fn,zonghecji); return 0;2. #includeint pingjufen(float cj) float sum=0,s; int i; for(i=0;i2;i+) sum+=cji; s=sum/3; printf(%f,s); getch();void main() float cj3=78,88,68; pingjufen(cj);3./ CC.cpp : Defines the entry point for the console

10、 application./#include stdafx.h#include string.hfloat jg41;void zhcj(int * deyu,int * zhiyu,int * tiyu,int * zhnl) int i; for(i=0;i2;i+) jgi=deyui * 0.25+zhiyui * 0.55+tiyui *0.10+zhnli*0.10; printf (jg=%fn,jgi); int main(int argc, char* argv) int deyu41=68,78; int zhiyu41=66,59; int tiyu41=88,90; i

11、nt zhnl41=78,85; zhcj(deyu,zhiyu,tiyu,zhnl); return 0; 4.#include stdafx.h void swap(int cj,int n) int i,j,*p=cj; int q; for(i=1;i=i;j-) if(*(p+j)*(p+j-1) int t; t=*(p+j); *(p+j)=*(p+j-1); *(p+j-1)=t; for(q=0;q41;q+)printf(%d ,*(p+q); printf(n); int main(void) int i; int cj41=71,82,62,75,86,74,88,69

12、,73,83,75,66,77,82,65,59,72,65,81,74,66,78,76,92,75,66,80,85,70,63,71,84,86,83,90,92,66,75,91,84,75; swap(cj,41); return 0;5.#include stdafx.h#include string.h#include #include #include #ifdef _MSC_VER#pragma comment(lib,odbc32.lib)#define SQLLEN SQLINTEGER#endifenum errtype ERRORFREE, ERRACTION, XL

13、SBUSY, TXTBUSY, TXTOPENERROR, SQLHANDLEENVERROR, SQLSETENVERROR, SQLHANDLEDBCERROR, SQLCONNECTERROR, SQLALLOCSTMTERROR, SQLCREATEERROR, SQLSELECTERROR, SQLBINDERROR ;SQLHENV henv;SQLHDBC hdbc;SQLHSTMT hstmt;/ -static void dbError( LPSTR lp, SQLSMALLINT handleType, SQLHANDLE handle) BYTE buf250, sqls

14、tate15; SQLGetDiagRec( handleType,handle, 1, sqlstate, NULL,buf, sizeof(buf),NULL); fprintf(stderr, %s: %s SQLSTATE=%s/n,lp, buf, sqlstate);/ -static void dbCleanup() if (hstmt != SQL_NULL_HANDLE) SQLFreeStmt(hstmt, SQL_UNBIND); SQLFreeHandle(SQL_HANDLE_STMT,hstmt); if (hdbc != SQL_NULL_HANDLE) SQLD

15、isconnect(hdbc); SQLFreeHandle(SQL_HANDLE_DBC,hdbc); if (henv != SQL_NULL_HANDLE) SQLFreeHandle(SQL_HANDLE_ENV,henv);/ -static void dbErrorCleanup( LPSTR lp,SQLSMALLINT handleType, SQLHENV henv,SQLHDBC hdbc,SQLHSTMT hstmt) SQLHANDLE handle; switch (handleType) case SQL_HANDLE_STMT: handle = hstmt; b

16、reak; case SQL_HANDLE_DBC: handle = hdbc; break; default: handle = henv; if (handle != SQL_NULL_HANDLE) dbError( lp, handleType, handle ); / dbCleanup(henv,hdbc) dbCleanup();/-static BOOL isFileOpen(const char *fileName) HANDLE hFile; / 以非共享方式打开文件. 检查EXCEL文件当前是否在使用中. hFile = CreateFile(fileName,GENE

17、RIC_READ,0,NULL,OPEN_EXISTING,0,NULL); if (hFile = INVALID_HANDLE_VALUE) if (GetLastError() = ERROR_SHARING_VIOLATION) return TRUE; / 使用中 else return FALSE; / 未使用中,或者无此文件(现在可以创建) else CloseHandle(hFile); return FALSE; int OpenExcel(char *szExcelName, char *szSheetName, char *szFieldName, char *szFie

18、ldType, int nColCount) SQLRETURN retcode; BYTE szSql512, *pszSql=szSql; char szdatabase256; / int rc, int i; henv = hdbc = hstmt = SQL_NULL_HANDLE; if ( isFileOpen(szExcelName) ) return XLSBUSY; / 准备环境 - retcode = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv); if (retcode != SQL_SUCCESS) db

19、ErrorCleanup( SQLAllocHandle(ENV),SQL_HANDLE_ENV,henv,hdbc,hstmt); return SQLHANDLEENVERROR; retcode = SQLSetEnvAttr(henv,SQL_ATTR_ODBC_VERSION, (SQLPOINTER) SQL_OV_ODBC3,0); if (retcode != SQL_SUCCESS) dbErrorCleanup( SQLSetEnvAttr(),SQL_HANDLE_ENV,henv,hdbc,hstmt); return SQLSETENVERROR; retcode =

20、 SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc); if (retcode != SQL_SUCCESS) dbErrorCleanup( SQLAllocHandle(DBC),SQL_HANDLE_ENV,henv,hdbc,hstmt); return SQLHANDLEDBCERROR; / 与数据库建立连接 - sprintf(szdatabase,DRIVER=Microsoft Excel Driver (*.xls);CREATE_DB=%s;DBQ=%s;READONLY=FALSE;EXCLUSIVE=Yes;, szExcelNam

21、e, szExcelName); /fprintf(stderr, DATABASE: %s/n, szdatabase); retcode = SQLDriverConnect(hdbc, NULL, (SQLCHAR *)szdatabase, (short) (strlen(szdatabase)+1), NULL, 0, NULL, SQL_DRIVER_NOPROMPT); if (retcode != SQL_SUCCESS & retcode != SQL_SUCCESS_WITH_INFO) dbErrorCleanup( SQLDriverConnect(),SQL_HAND

22、LE_DBC,henv,hdbc,hstmt); return SQLCONNECTERROR; retcode = SQLAllocHandle(SQL_HANDLE_STMT,hdbc, &hstmt); if (retcode != SQL_SUCCESS) dbErrorCleanup( SQLAllocHandle(STMT),SQL_HANDLE_DBC,henv,hdbc,hstmt); return SQLALLOCSTMTERROR; / 构造执行 CREATE TABLE 语句 - pszSql = szSql + sprintf(char*)szSql, CREATE T

23、ABLE %s (, szSheetName); for (i=0; inColCount; +i) if (i) *pszSql+ = ,; pszSql += sprintf(char *)pszSql, %s %s, szFieldNamei, szFieldTypei); *pszSql+ = ); *pszSql = 0; /fprintf(stderr, STATEMENT: %s/n, szSql); retcode = SQLExecDirect(hstmt, szSql, SQL_NTS); if (retcode != SQL_SUCCESS) SQLCHAR sqlSta

24、te15; SQLGetDiagField( SQL_HANDLE_STMT, hstmt,1,SQL_DIAG_SQLSTATE,sqlState,sizeof(sqlState),NULL); if ( lstrcmpiA(char *)sqlState,42S01) != 0 ) / Already existing. dbErrorCleanup( SQLExecDirect(),SQL_HANDLE_STMT,henv,hdbc,hstmt); return SQLCREATEERROR; return 0;int AppendExcel(char *szSheetName, cha

25、r *szFieldName, int nColCount, char *szData) int i, rc; BYTE szSql512, *psz; /构造 INSERT INTO 语句 - psz = szSql + sprintf(char *)szSql, INSERT INTO %s (, szSheetName); for (i=0; inColCount; +i) if (i) *psz+ = ,; psz += sprintf(char *)psz, %s, szFieldNamei); psz += sprintf(char *)psz, ) VALUES (%s), sz

26、Data); /fprintf(stderr, STATEMENT: %s/n, szSql); rc = (int) SQLExecDirect(hstmt, szSql, SQL_NTS); if (rc != SQL_SUCCESS) dbError( SQLExecDirect(),SQL_HANDLE_STMT,hstmt); return 0;void CloseExcel() /fprintf(stderr, CleanUp: henv=%08X; hdbc=%08X, hstmt=%08X./n, henv, hdbc, hstmt); dbCleanup();/- Test

27、data -static char szExcelName = Test.xls; / Excel 文件名static char szSheetNameA = 成绩表; / 工作表名static char *szFieldNameA = 成绩; / 字段名static char *szFieldTypeA = NUMBER; / 字段类型static char szSheetNameB = 日程; / 工作表名static char *szFieldNameB = 日期, 时间, 安排 ; / 字段名static char *szFieldTypeB = TEXT, TEXT, TEXT ; / 字段类型char str20;void itos(int n)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1