导语

内容提要

陈叶芳主编的《基于NBU OJ的C语言在线实验及习题汇编》是为“C语言程序设计”课程编写的实验指导用书。全书以宁波大学程序设计在线评判系统(NBU OJ)为平台,在该平台上汇集了我们设计、整理的大量程序设计题目。

为了帮助读者有效学习,本书精选了NBU OJ上不同类型的30多道题目,并提供了完善的参考程序,介绍了Visual C++6.0环境下程序调试的技巧以及NBU OJ上的评判规则,总结了程序开发中容易犯的错误,同时还挑选了OJ上的160多道题目供学生实验使用。读者可以先模仿实例操作,然后再做上机实验题,通过“模仿一调试一编写”的上机实践过程,循序渐进地熟悉编程环境及OJ平台,掌握程序设计的思想和方法。本书还提供了两个综合课程设计,并给出了程序的基础代码,供读者模仿完善。书中还提供了少量习题,可供读者巩固C语言方面的理论知识。

本书可作为高等院校理工科相关专业的程序设计类课程实践教材,也可作为以ACM/ICPC为目标的大学生程序设计竞赛的入门培训教材,还可供对程序设计感兴趣的普通读者学习参考。

目录

第1部分  在线实验

实验1熟悉C编程环境

1.1  实验目的和要求

1.2  熟悉VisualC集成开发环境

1.2.1  启动VisualC

1.2.2  新建或打开源程序文件

1.2.3  程序的编辑、编译、连接和运行

1.2.4  程序的关闭

1.3  程序调试中的错误

1.3.1  编译错误

1.3.2  连接错误

1.3.3  运行错误

1.3.4  逻辑错误

1.4  实例分析

1.4.1  开学的问候

1.4.2  显示简单图案

1.4.3  自动应答器

1.5  上机实验题

1.5.1  自我介绍

1.5.2  才艺秀

1.5.3  菜单显示

1.5.4  加强版自动应答器

实验2在线评判系统(NBUOJ)的使用

2.1  实验目的和要求

2.2  NBUOJ系统简介

2.3  在NBUOJ上注册

2.4  在NBUOJ上做题

2.4.1  学生自主式做题

2.4.2  教师指导式做题

2.5  在线课程(ONLINECOURSE)管理

2.5.1  课程管理(教师用户)

2.5.2  成绩管理(教师用户)

2.5.3  课程学习(学生用户)

2.6  NBUOJ上输入输出的特殊要求

2.7  实例分析

2.7.1  数字自动应答器(题号:1000,难度:★)

2.7.2  单组AB(题号:1002,难度:★)

2.8  上机实验题

2.8.1  字符应答器(题号:1001,难度:★)

2.8.2  两数交换输出顺序(题号:1015,难度:★)

2.8.3  小神探的小问题(题号:1215,难度:★)

实验3基本数据类型与顺序结构

3.1  实验目的和要求

3.2  实例分析

3.2.1  计算月收入(题号:1006,难度:★)

3.2.2  温度转换(题号:1007,难度:★)

3.2.3  卫生包干区的面积(题号:1011,难度:★)

3.2.4  三位数的数位分离(题号:1029,难度:★)

3.3  上机实验题

3.3.1  三数求平均值(题号:1005,难度:★)

3.3.2  圆周长和圆面积(题号:1008,难度:★)

3.3.3  梯形面积(题号:1205,难度:★)

3.3.4  植树问题(题号:1018,难度:★)

3.3.5  成绩预算(题号:1021,难度:★)

3.3.6  简单译码(题号:1022,难度:★)

3.3.7  多项式求值2(题号:1025,难度:★)

3.3.8  存款利息(题号:1027,难度:★)

3.3.9  不同国家的日期写法(题号:1258,难度:★)

3.3.10  鸡兔同笼(1)(题号:1014,难度:★)

3.3.11  四位数的数字和(题号:1247,难度:★)

3.3.12  平面上两点的距离(题号:1013,难度:★)

3.3.13  旅行时间和花费(题号:1242,难度:★)

3.3.14  零钱兑换(题号:1243,难度:★)

实验4选择结构

4.1  实验目的和要求

4.2  实例分析

4.2.1  成绩合格问题(题号:1058,难度:★)

4.2.2  符号属性判断(题号:1036,难度:★)

4.2.3  分段函数(1)(题号:1041,难度:★)

4.2.4  单个字母大小写互换(题号:1047,难度:★)

4.2.5  平面上的三角形判断(1)(题号:1012,难度:★)

4.3  上机实验题

4.3.1  判断奇数偶数(题号:1038,难度:★)

4.3.2  分段函数(3)(题号:1043,难度:★)

4.3.3  单个字符类型判断(题号:1049,难度:★)

4.3.4  五级制成绩评级(题号:1060,难度:★)

4.3.5  是否闰年(题号:1072,难度:★)

4.3.6  求点的高度(题号:1082,难度:★)

4.3.7  求1到10的英文单词(题号:1083,难度:★)

4.3.8  简单计算器(题号:1084,难度:★)

4.3.9  正方形还是圆形(题号:1218,难度:★)

4.3.10  三数求大值(题号:1064,难度:★)

4.3.11  模拟万年历(题号:1073,难度:★)

4.3.12  加油站加油(题号:1078,难度:★)

4.3.13  数字加密(题号:1077,难度:★)

4.3.14  一元二次方程(题号:1081,难度:★)

4.3.15  石头剪刀布(题号:1232,难度:★)

4.3.16  计算火车运行时间(题号:1492,难度:★)

4.3.17  机器人的移动问题(题号:1238,难度:★★)

实验5基本循环结构

5.1  实验目的和要求

5.2  实例分析

5.2.1  1到N连续求和(题号:1090,难度:★)

5.2.2  简单分数数列求和(题号:1098,难度:★)

5.2.3  一组整数求平均(题号:1108,难度:★)

5.2.4  不确定组数的AB(题号:1003,难度:★)

5.3  上机实验题

5.3.1  简单数字打印(题号:1086,难度:★)

5.3.2  符号变化的整数数列求和(题号:1091,难度:★)

5.3.3  乘法数列求和(题号:1095,难度:★)

5.3.4  分数数列求和(题号:1101,难度:★)

5.3.5  计算n!(题号:1104,难度:★)

5.3.6  正/负数统计(题号:1113,难度:★)

5.3.7  N组AB(题号:1004,难度:★)

5.3.8  数字字符统计(题号:1052,难度:★)

5.3.9  字符分类统计(题号:1053,难度:★)

5.3.10  各位数字求和(题号:1032,难度:★)

5.3.11  数据逆序显示(题号:1031,难度:★)

5.3.12  水仙花数(题号:1126,难度:★)

5.3.13  判断完全数(题号:1127,难度:★)

5.3.14  分解质因数(题号:1128,难度:★)

5.3.15  蟠桃记(题号:1136,难度:★)

5.3.16  还是鸡兔同笼(题号:1211,难度:★)

5.3.17  判断亲密数(题号:1213,难度:★)

5.3.18  角谷猜想(题号:1458,难度:★)

5.3.19  画正方形(题号:1080,难度:★)

5.3.20  用天平找小球(题号:1491,难度:★)

5.3.21  数星星(题号:2547,难度:★)

5.3.22  统计衣服尺寸(题号:1265,难度:★)

5.3.23  勤劳的蚂蚁(题号:1233,难度:★★)

5.3.24  回流的时光(题号:1235,难度:★★)

5.3.25  一数三平方数(题号:1421,难度:★★)

实验6嵌套循环结构

6.1  实验目的和要求

6.2  实例分析

6.2.1  绘制字符正方形(题号:1226,难度:★)

6.2.2  求阶乘之和(题号:1105,难度:★)

6.3  上机实验题

6.3.1  表示成两个数的平方和(题号:1222,难度:★)

6.3.2  多组整数求和(题号:1109,难度:★)

6.3.3  百钱百鸡问题(题号:2095,难度:★)

6.3.4  九九乘法表(题号:1119,难度:★★)

6.3.5  字母金字塔(题号:1166,难度:★★)

6.3.6  打印菱形(题号:1214,难度:★★)

6.3.7  哥德巴赫猜想(题号:1174,难度:★★)

6.3.8  计算等式(题号:1103,难度:★★)

6.3.9  不重复的三位数(题号:1801,难度:★★)

6.3.10  鸡、兔、鸟同笼(题号:1434,难度:★★)

6.3.11  满载着爱的代码(题号:1241,难度:★★★)

实验7一维数值型数组

7.1  实验目的和要求

7.2  实例分析

7.2.1  无序数组的查找(题号:1151,难度:★)

7.2.2  最大值和最小值(题号:1152,难度:★)

7.2.3  一维数组的删除(题号:1154,难度:★★)

7.3  上机实验题

7.3.1  一维数组基本练习(题号:1149,难度:★)

7.3.2  平均分及不合格人数(题号:1111,难度:★)

7.3.3  简单评委打分(题号:1147,难度:★)

7.3.4  求年月日(题号:1075,难度:★)

7.3.5  一维数组逆序显示(题号:1155,难度:★)

7.3.6  斐波那契的兔子问题(题号:1124,难度:★)

7.3.7  有序数组的查找(题号:1158,难度:★)

7.3.8  一维数组的插入(题号:1153,难度:★)

7.3.9  剔除数字0(题号:1194,难度:★)

7.3.10  简单一维数组排序(题号:1156,难度:★)

7.3.11  最高分和最低分(题号:1157,难度:★)

7.3.12  统计素数(题号:1131,难度:★)

7.3.13  百灯判熄(题号:1122,难度:★★)

7.3.14  十进制转换成八进制(题号:1172,难度:★★)

7.3.15  幂之和(题号:1209,难度:★★)

7.3.16  三天打鱼两天晒网(题号:1228,难度:★★)

7.3.17  数制转换(题号:1239,难度:★★)

7.3.18  一位数出现的次数(题号:1252,难度:★★)

7.3.19  susan的货币兑换(题号:1167,难度:★★)

7.3.20  无重复的排序(题号:1262,难度:★★)

实验8二维数值型数组

8.1  实验目的和要求

8.2  实例分析

8.2.1  二维数组的输入和输出(题号:1141,难度:★)

8.2.2  二维数组的最大值(题号:1161,难度:★)

8.3  上机实验题

8.3.1  单位矩阵初始化(题号:1140,难度:★)

8.3.2  二维数组求行平均值(题号:1142,难度:★)

8.3.3  对角线元素和(题号:1164,难度:★)

8.3.4  上三角置零(题号:1298,难度:★)

8.3.5  内部和(题号:1299,难度:★)

8.3.6  边界积(题号:1312,难度:★)

8.3.7  二维数组最大值及位置(题号:1162,难度:★★)

8.3.8  杨辉三角形(题号:1165,难度:★★)

8.3.9  二维数组行列互换(题号:1169,难度:★★)

8.3.1  0二维数组的鞍点(题号:1181,难度:★★)

实验9字符数组和字符串

9.1  实验目的和要求

9.2  实例分析

9.2.1  字符变换(题号:1057,难度:★)

9.2.2  回文数字(题号:1144,难度:★)

9.3  上机实验题

9.3.1  相邻字符判相等(题号:1054,难度:★)

9.3.2  特定字符出现次数(题号:1056,难度:★)

9.3.3  单词译码(题号:1139,难度:★)

9.3.4  数字提取(题号:1187,难度:★)

9.3.5  镜像文字(题号:1336,难度:★)

9.3.6  回文字符串(题号:1145,难度:★)

9.3.7  输出最短字符串(题号:1201,难度:★)

9.3.8  数字字符出现频率(题号:1148,难度:★★)

9.3.9  字母出现频率(题号:1159,难度:★★)

9.3.10  文章中字符数统计(题号:1150,难度:★★)

9.3.11  C语言合法标识符(题号:1190,难度:★★)

9.3.12  判断字符串类型(题号:1199,难度:★★)

9.3.13  首字母变大写(题号:1337,难度:★★)

9.3.14  清除行注释(题号:1138,难度:★★)

9.3.15  查找最大元素(题号:1175,难度:★★)

9.3.16  城市名排序(题号:1185,难度:★★)

9.3.17  你能找出多少个整数(题号:1315,难度:★★)

9.3.18  幸运抽奖(题号:1340,难度:★★)

9.3.19  去过的城市(题号:1352,难度:★★)

9.3.20  快乐的字符串(题号:1341,难度:★★)

实验10函数的基本使用

10.1  实验目的和要求

10.2  实例分析

10.2.1  大写字母变小写(题号:2628,难度:★)

10.2.2  求阶乘(题号:2629,难度:★)

10.3  上机实验题

10.3.1  两整数相加(题号:2627,难度:★)

10.3.2  多项式求值(题号:2630,难度:★)

10.3.3  求两数平均值(题号:2631,难度:★)

10.3.4  求两数最大值(题号:2634,难度:★)

10.3.5  是否素数(题号:2636,难度:★)

10.3.6  判断区域内的素数(题号:2633,难度:★)

10.3.7  是否完全数(题号:2635,难度:★)

10.3.8  字母金字塔(题号:2632,难度:★)

10.3.9  求最大公约数(题号:2644,难度:★)

10.3.10  不一样的斐波那契(题号:2645,难度:★)

10.3.11  汉诺塔(题号:1143,难度:★★)

实验11指针、数组与函数

11.1  实验目的和要求

11.2  实例分析

11.2.1  最大值和最小值(题号:1152,难度:★)

11.2.2  单位矩阵初始化(题号:1140,难度:★)

11.3  上机实验题

11.3.1  简单数字显示(题号:2637,难度:★)

11.3.2  一维数组元素加1显示(题号:2639,难度:★)

11.3.3  两数求和(题号:2641,难度:★)

11.3.4  求数组中的最大值(题号:2646,难度:★)

11.3.5  计算总分(题号:1110,难度:★)

11.3.6  还是平均分(题号:1112,难度:★)

11.3.7  一维数组排序(题号:1170,难度:★)

11.3.8  二维数组元素加1操作(题号:1160,难度:★)

11.3.9  字符串长度(题号:1182,难度:★)

11.3.9  连接字符串(题号:1183,难度:★)

11.3.10  字符串复制(题号:1256,难度:★)

11.3.11  比较串的大小(题号:1404,难度:★)

11.3.12  正数的平均值(题号:1200,难度:★)

11.3.13  数组中对应元素相减(题号:2647,难度:★)

11.3.14  无序数组的查找(题号:1151,难度:★)

11.3.15  二维数组的输入输出(题号:1141,难度:★)

11.3.16  数字剔除(题号:1443,难度:★★)

11.3.17  字符接龙(题号:1444,难度:★★)

实验12结构体

12.1  实验目的和要求

12.2  实例分析

12.2.1  牛刀小试结构体(题号:1435,难度:★)

12.2.2  课程平均分(题号:1445,难度:★)

12.3  上机实验题

12.3.1  初学结构体(题号:1436,难度:★)

12.3.2  结构体的嵌套(题号:1437,难度:★)

12.3.3  计算总分(题号:1438,难度:★)

12.3.4  候选人得票统计(题号:1887,难度:★)

12.3.5  最高分与平均分(题号:1310,难度:★)

12.3.6  教务系统之输入输出(题号:1331,难度:★)

12.3.7  教务系统之平均成绩(题号:1414,难度:★)

12.3.8  考试之后(题号:1372,难度:★★)

12.3.9  OJ上的简单排名(题号:1429,难度:★★)

12.3.10  庆功晚宴(题号:1370,难度:★★)

12.3.11  情人节的百宝箱(题号:1371,难度:★★)

12.3.12  奖学金(题号:1439,难度:★★)

12.3.13  购买贺年卡(题号:1440,难度:★★★)

12.3.14  最简真分数递增序列(题号:1400,难度:★★★)

实验13单向链表

13.1  实验目的和要求

13.2  实例分析

13.2.1  静态链表的建立和查询(题号:1327,难度:★)

13.2.2  链表删除(题号:1392,难度:★★)

13.3  上机实验题

13.3.1  动态链表的建立和查询(题号:1425,难度:★)

13.3.2  链表插入(题号:1394,难度:★★)

13.3.3  约瑟夫(题号:1390,难度:★★)

13.3.4  复杂的链表删除(题号:1392,难度:★★)

实验14文件

14.1  实验目的和要求

14.2  实例分析

14.2.1  CoCo的小把戏

14.2.2  存储学生信息

14.3  上机实验题

14.3.1  信息的显示

14.3.2  专家的工作

14.3.3  奇偶数分离

14.3.4  学生成绩管理

实验15课程设计

15.1  小学生四则运算小游戏

15.1.1  问题描述

15.1.2  知识点

15.1.3  功能分析

15.1.4  参考代码1.0

15.1.5  参考代码2.0

15.2  学生成绩管理系统

15.2.1  问题描述

15.2.2  知识点

15.2.3  功能分析

15.2.4  参考代码1.0

15.2.5  参考代码2.0

第2部分  习题汇编

习题1计算机与程序设计概述

习题2基本数据类型与顺序结构

习题3选择结构

习题4循环结构

习题5数值型数组

习题6字符数组和字符串

习题7函数

习题8指针、数组与函数

习题9结构体

习题10链表

习题11文件

习题参考答案

参考文献

c语言最大值和最小值1157,基于NBU OJ的C语言在线实验及习题汇编(计算机科学与技术21世纪高等学校规划教材)...相关推荐

  1. c语言程序设计李新华,21世纪高等学校规划教材:C语言程序设计

    <C语言程序设计>为21世纪高等学校规划教材.全书共分lO章,主要内容包括c程序设计概述.数据及运算.流程控制.数组.指针.函数.结构体文件.c语言实际应用.c语言程序设计常见错误及解决方 ...

  2. c语言开发五轴后处理,基于UGCLS文件使用C语言制作智能后处理工具.doc

    基于UGCLS文件使用C语言制作智能后处理工具 基于UG CLS文件使用C语言制作智能后处理工具 发表时间:2008-9-10 张伟 基于UGCLS文件特性,利用C语言制作附带业务规则的后处理工具的一 ...

  3. 运城学院C语言题目,C语言课程设计实验报告【运城学院计算机科学与技术系】.doc...

    C语言课程设计.通讯录管理系统 第 PAGE 4 页 共 NUMPAGES 14 页 <程序设计基础> 课程设计报告 课程设计题目 通讯录管理系统 指导教师:____李 萍____ 班 级 ...

  4. c语言找出最大值和最小值并按降序排输出,C语言用排序法给十个数降序排列,用C语言编写,输入10个数按降序排列...

    问题标题 C语言用排序法给十个数降序排列,用C语言编写,输入10个数按降序排列 2019-6-4来自ip:14.161.145.86的网友咨询 浏览量:562 手机版 问题补充: C语言用排序法给十个 ...

  5. 基于nbu oj c语言答案,Just oj 2018 C语言程序设计竞赛(高级组)F:Star(结构体排序+最小生成树)...

    Time Limit: 1 s      Memory Limit: 128 MB Problem Description 31世纪,人类世界的科技已经发展到了空前的高度,星际移民,星际旅游早已经不再 ...

  6. dhcp计算机毕业论文,基于线程池机制的高性能DHCP服务器研究与实现-计算机科学与技术专业毕业论文.docx...

    文档介绍: 西北丁业大学硕士学位论文 摘要摘 要随着互联网的蓬勃发展,IP地址资源越来越紧张.DHCP服务是在现有IPv4协议基础上解决IP地址资源短缺问题的有效途径.目前,多数DHCP服务器是单线程 ...

  7. 郑尚志C语言程序设计答案,[高等学校规划教材 工程应用型院校计算机系列教材]操作系统...

    作者简介:郑尚志,男,博士,副教授.获奖情况:2001年1月<高师计算机实验教学改革>项目获安徽省优秀教学成果三等奖(第一完成人);2002年8月<微机硬件基础>课件在安徽省首 ...

  8. linux系统输入数字 求最大值,写函数,输入n个数字输出最大值和最小值

    # ,写函数,传入n个数,返回字典{'max':最大值,'min':最小值} # 例如:min_max(2,5,7,8,4) 返回:{'max':8,'min':2}(此题用到max(),min()内 ...

  9. 计算机科学与技术网上书店,计算机科学与技术毕业论文:基于web的网上书店.doc...

    本科毕业论文(设计) 题 目 基于web的网上书店 学生姓名 专业名称 计算机科学与技术 指导教师 目录 1.引言5 2.系统概述6 2.1概述6 2.2 开发平台7 3.需求分析7 3.1总体需求描 ...

最新文章

  1. 生成随机密码的十种方法
  2. python reduce()函数
  3. nidlist 问题
  4. Hive Sql 时间格式化处理
  5. faster-rcnn系列assert (boxes[:, 2] = boxes[:, 0]).all()和loss偶尔为nan的问题
  6. [Qt教程] 第27篇 XML(一)使用DOM读取XML文档
  7. MYSQL 与 Oracle 之间的数据类型转换
  8. MySql的连接查询
  9. CF 1642 F. Two Arrays 随机 + sosdp
  10. IDEA 插件开发入门教程 1
  11. 翼支付和银行网络连通准备
  12. DevExpress 程序启动设置
  13. SharePoint 备忘录(一)
  14. hpm1216nfh驱动程序_惠普M1216nfh驱动下载
  15. Android hardware简易流程
  16. 关于echar彩色柱状图颜色配置问题
  17. excel颠倒顺序从下到上排列的两种方法
  18. IT互联网的一些职位的简称
  19. java.lang.exceptionininitializererror_解决出现 java.lang.ExceptionInInitializerError错误问题
  20. 2022小米运维开发笔试1

热门文章

  1. 面试官问:如何快速开发一个类似微信的聊天系统?
  2. 主动被动获取隐藏的SSID名称
  3. 十六进制和中文的相互转换
  4. 好莱坞名导:魔兽世界教会我们的7个人生哲理
  5. 论证是一门学问 如何让你的观点有说服力-2 规则2 理顺你的思路
  6. mysql to hour_MYSQL时间函数
  7. 按键精灵1.3.7使用心得
  8. ssh框架jackjson升级
  9. Three.js BIM模型轻量化 FPS渲染速率优化 多 实例渲染[Instance]+顶点合并[Merge]
  10. CSS适配刘海屏的几种方式