C语言试题(标准答案)
C语言试题(标准答案)
一.单选题(每小题2分,共20小题40分)
1.1-1.5 B D A C B 1.6-1.10 C A D B C
1.11-1.15 A D D C B 1.16-1.20 D A B C A
二.填空题(每空2分,共10空20分)
2.1 52 。
2.2 10 ; 12 ; 120 。
2.3 110 。
2.4 0x801005 ; 0x801014 。
2.5 2 ; 5 。
2.6 自动 。
三.简答题(每小题4分,共5小题20分)
3.1全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?
答:可以。(2分)
在不同的C文件中以static形式来声明同名全局变量。(2分)
3.2引用与指针有什么区别?
答:(1) 引用必须被初始化,指针不必;(1分)
(2) 引用初始化以后不能被改变,指针可以改变所指的对象;(1.5分)
(3) 不存在指向空值的引用,但是存在指向空值的指针。(1.5分)
3.3堆栈溢出一般是由什么原因导致的?
答:没有回收垃圾资源。(或答:没有释放无用的资源。)(4分)
3.4队列和栈有什么区别?
答:队列先进先出,(2分)栈后进先出。(2分)
3.5编译工作区的时候,往往会遇到错误码为“0x00000002”的编译错误,查找相应的错误描述却没有找到,出现此种情况的原因是什么?应该怎样处理?
答:原因是编译过程产生了不可预知的错误。(2分)
解决办法有:尝试重启电脑或禁用分布式编译采用单机编译。(2分)
四. 编程题(每小题10分,共2小题20分)
4.1编写函数实现一个整数的逆序输出,整数由参数n表示,例如n=1234,则输出4321,要求不可以使用任何C库函数,函数原型如下:void inv(int n);
答题评分标准:
1、 考虑了负数的情况:3分
2、 使用了临时变量:2分
3、 有打印并打印格式正确:1分
4、 有相应的注释:1分
5、 结果完全正确:3分
参考程序:
void inv(int n)
{
int tmpNum = n; // 使用了临时变量:2分
if (tmpNum < 0) // 考虑了负数的情况:3分
{
// 负数
k = 0;
tmpNum = -tmpNum;
printf("-");
}
while(tmpNum)
{
printf("%d", tmpNum%10); // 打印正确:1分
tmpNum = tmpNum / 10;
}
}
4.2求2~2000的所有素数并打印在屏幕上,有足够的内存,要求尽量快。
答题评分标准:
1、 保存找到的素数,使用全局数组和全局变量而非临时申请的空间:3分
2、 判断素数的关键循环:3分
3、 有打印并打印格式正确:1分
4、 有相应的注释:1分
5、 结果完全正确:2分
参考程序:
int findvalue[2000] = {2}; // 使用了全局数组和全局变量:3分
static int find = 1;
bool adjust(int value);
void GetPrimeNumbers(void)
{
for (int i = 2; i <= 2000; i++)
{
if (adjust(i)) // 有打印判断并打印语句正确:1分
{
printf("%d ", i);
}
}
}
bool adjust(int value)
{
assert(value>=2);
if (value == 2)
{
return true;
}
for (int i = 0; i < find; i++) // 判断素数的关键循环:3分
{
if (value % findvalue[i] == 0)
{
return false;
}
}
findvalue[find++] = value;
return true;
}
C语言试题(标准答案)的更多相关文章
- DB2系统管理试题标准答案
1. 如果需要创建一个表,并把表中的索引数据和其他数据分开存储,则应该 A.建立两个SMS表空间分别存储索引数据和其他数据 B.建立两个DMS表空间分别存储索引数据和其他数据 C.建立一个DMS表空间 ...
- C语言编程规范试题(标准答案)
C语言编程规范试题(标准答案) 一.单选题(每小题3分,共20小题60分) 1.1-1.5 B D A C B 1.6-1.10 C A D B C 1.11 ...
- JAVA可能问的几个面试题问题及问题的标准答案
问题一:你希望工作环境是怎样的? 标准答案:我对环境没有苛求,我会努力适应环境的. 注:此问题是在测试你的求职心态,是以自己为中心还是以工作为中心. 问题二:你觉得自己有哪些缺点? 标准答案:说一些对 ...
- php面试题及答案收藏(转)
php面试题及答案收藏(这套试题是在网上看到的,不知作者是谁) 基础题 1.表单中 get与post提交方法的区别? 答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据, ...
- Linux面试题汇总答案
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...
- JSP面试题及答案
更新时间:2015-04-07 来源:网络 投诉删除 [看准网(Kanzhun.com)]JSP面试题频道小编搜集的范文“JSP面试题及答案”,供大家阅读参考,查看更多 ...
- 前端周报:前端面试题及答案总结;JavaScript参数传递的深入理解
1.2017前端面试题及答案总结 |掘金技术征文 "金三银四,金九银十",用来形容求职最好的几个月.但是随着行业的饱和,初中级前端er就业形势不容乐观. 行业状态不可控,我们能做的 ...
- 近5年常考Java面试题及答案整理(三)
上一篇:近5年常考Java面试题及答案整理(二) 68.Java中如何实现序列化,有什么意义? 答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化.可以对流化后的对象进行读写 ...
- 近5年常考Java面试题及答案整理(二)
上一篇:近5年常考Java面试题及答案整理(一) 31.String s = new String("xyz");创建了几个字符串对象? 答:两个对象,一个是静态区的"x ...
随机推荐
- ionic2.1.0 --beta3版本新建页面做弹框时遇到的问题
新建的页面需要在app.module.ts文件中定义.不然制作页面弹出效果是会报错.
- (博弈论)51NOD 1066 Bash游戏
有一堆石子共有N个.A B两个人轮流拿,A先拿.每次最少拿1颗,最多拿K颗,拿到最后1颗石子的人获胜.假设A B都非常聪明,拿石子的过程中不会出现失误.给出N和K,问最后谁能赢得比赛. 例如N = 3 ...
- 自动生成 html5 小页面
StringBuilder htmltext = new StringBuilder(); try { //var readP ...
- POJ 2194 2850 计算几何
题意: 给你了n个圆,让你摞起来,问顶层圆心的坐标 (数据保证间隔两层的圆不会挨着) 思路: 按照题意模拟. 假设我们已经知道了一层两个相邻圆的坐标a:(x1,y1)和b:(x2,y2) 很容易求出来 ...
- c++类的内存布局
问题: 考察了reinterpret_cast和static_cast的区别.顺道发现了一个可以查看c++内存布局的工具(在VS中). 结果: 前两个输出的地址形同,后一个不同. class A{in ...
- 常用的几个Dos命令-持续更新中
1.服务相关 (1).查看服务 C:\Windows\system32>net start 已经启动以下 Windows 服务: (2).启动服务 C:\Windows\system32> ...
- 三维重建PCL:点云单侧面正射投影
终于把点云单侧面投影正射投影的代码写完了,为一个阶段,主要使用平面插值方法,且只以XOY平面作为的正射投影面.有些凑合的地方,待改进. 方法思路:使用Mesh模型,对每一个表面进行表面重建.借助Ope ...
- maven引入的包无法使用 解决方法
如果正常引入后在依赖中能够找到包,但是打不开 1.有可能是包下载不完整 把maven下载源由国外转成阿里镜像源找到 maven 的配置文件: settings.xml 文件: <mirror&g ...
- ThinkPHP---TP功能类之公文管理功能2----------继续完善
[前言] 之前已经完成了公文的添加和列表展示功能,今天继续完善.做下公文的编辑和删除功能. [主体] (1)分析 控制器:DocController.class.php 方法:edit(将模板展示和数 ...
- 01Microsoft SQL Server
Microsoft SQL Server Microsoft SQL Server 是Microsoft 公司推出的关系型数据库管理系统.具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越膝上型 ...