77范文网 - 专业文章范例文档资料分享平台

计算机软件实验报告 - 图文(2)

来源:网络收集 时间:2019-03-03 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

else // 认为是运算符,没有考虑空格等 { GetTopStack(&OS, op); // 获得OS栈顶运算符 if (Priority(x) > Priority(op)) // 运算符的优先级〉栈顶运算符 PushStack(&OS,x); // 高优先级运算符压栈 if (x[0] == ';' && op[0] == ';') // 扫描结束 break; if (Priority(x) <= Priority(op)) // 不大于栈顶运算符 { PopStack(&OS,op); PopStack(&NS, num2); PopStack(&NS, num1); Compute(num1,num2,op,chResult); // 计算表达式的值 PushStack(&NS,chResult); // 数字压栈 continue; } } OutQueue(&que, x); // 扫描表达式 } printf(\ system(\ return 0; }

void InitQueue(QUEUE *q,int nMaxSize) { q->nMaxSize = nMaxSize; q->nCount = 0; q->nFront = 0; q->nRear = 0; for(int i=0;i<30;i++) for(int j=0;j<10;j++) q->szQueue[i][j] = '\\0'; }

int InQueue(QUEUE *q, char *pItem) { if(q->nFront > q->nMaxSize) { printf(\列队已满,不能插入!\\n\ return 0; } else { strcpy(q->szQueue[q->nFront],pItem);

q->nFront++; return 1; } }

int OutQueue(QUEUE *q, char *pItem) { if(q->nRear > q->nFront) { printf(\列队已空,不能出队!\\n\ return 0; } else { strcpy(pItem,q->szQueue[q->nRear]); q->nRear++; return 1; } }

void InitStack(STACK *s,int nMaxSize) { s->nMaxSize = nMaxSize; s->nTop = 0; for(int i=0;i<30;i++) for(int j=0;j<10;j++) s->szStack[i][j] = '\\0'; }

int PushStack(STACK *s, char *pItem) { if(s->nTop > s->nMaxSize) { printf(\栈已满,不能插入!\\n\ return 0; } else { strcpy(s->szStack[s->nTop],pItem); s->nTop++; return 1; } }

int PopStack(STACK *s, char *pItem) { if(s->nTop < 0)

{ printf(\列队已空,不能出队!\\n\ return 0; } else { strcpy(pItem,s->szStack[s->nTop-1]); s->nTop--; return 1; } }

void GetTopStack(STACK *s, char *pItem) { strcpy(pItem,s->szStack[s->nTop-1]); }

int isdigit(char isnum) { switch(isnum) { case '^': case '*': case '/': case '+': case '-': case ';': return 0; default: return 1; } }

int Priority(char *op ) { int nPriority = 0; switch (op[0]) { case '^': nPriority = 3; break; case '*': case '/': nPriority = 2; break; case '+':

case '-': nPriority = 1; break; case ';': nPriority = 0; } return nPriority; }

void Compute(char *num1, char *num2, char *op, char *chResult) { double fNum1,fNum2; double fResult = 0; fNum1 = atof(num1); fNum2 = atof(num2); switch (op[0]) { case '^': fResult = pow(fNum1,fNum2); break; case '*': fResult = fNum1*fNum2; break; case '/': fResult = fNum1/fNum2; break; case '+': fResult = fNum1+fNum2; break; case '-': fResult = fNum1-fNum2; break; } sprintf(chResult,\//把计算的结果转化为字符串 return; }

运行结果:

实验三:查询学生出生日期(Sno, Sname, BirthDay);按学号顺序查询一个班级的所有学生(Class, Sname);列出学生选择各门课程的成绩(Sname, Cname,

Grade) ;列出有过不及格成绩的学生名单(Sno, Sname, Class);求学生的平均成绩和总成绩(Sname, PJCJ, ZCJ);查找各科成绩都 >= 85 分的学生(Sname, Class);将课程号为“01”的课程名称修改为“软件技术”;修改一名学生的姓名、性别、年龄;将成绩为55~59分的男生的成绩修改为60分;删除90年以后、80年以前出生的学生的所有信息(包括选课和成绩);删除一个班级的所有学生;删除所有数据表和数据库。 程序清单及结果: 1.创建数据库 MyDB

IF EXISTS (SELECT *

FROM master..sysdatabases

WHERE name = N'') DROP DATABASE MyDB; GO

CREATE DATABASE MYDB; GO

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库计算机软件实验报告 - 图文(2)在线全文阅读。

计算机软件实验报告 - 图文(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/489044.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: