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 ...
随机推荐
- 10.9NOIP模拟题
/* big模拟 细节不少 remove表示这个玩意儿在这一秒有没有移动 注意在一秒内所有小葱一起移动,所以如果一个一个处理 别忘了“错位”这种情况 */ #include<iostream&g ...
- Linux上安装禅道
linux一键安装包内置了apache, php, mysql这些应用程序,只需要下载解压缩即可运行禅道. 从7.3版本开始,linux一键安装包分为32位和64位两个包,请大家根据操作系统的情况下载 ...
- JavaScript--编程练习2
制作一个跳转提示页面: 要求: 1. 如果打开该页面后,如果不做任何操作则5秒后自动跳转到一个新的地址,如慕课网主页. 2. 如果点击“返回”按钮则返回前一个页面. 效果: 注意: 在窗口中运行该程序 ...
- [Qt及Qt Quick开发实战精解] 第1章 多文档编辑器
这一章的例子是对<Qt Creator快速人门>基础应用篇各章节知识的综合应用, 也是一个规范的实例程序.之所以说其规范,是因为在这个程序中,我们对菜单什么时候可用/什么时候不可用.关 ...
- 贪心 CodeForces 137B Permutation
题目传送门 /* 贪心:因为可以任意修改,所以答案是没有出现过的数字的个数 */ #include <cstdio> #include <algorithm> #include ...
- ACM_Scramble Sort
Scramble Sort Time Limit: 2000/1000ms (Java/Others) Problem Description: In this problem you will be ...
- 实例化WebService实例对象时出现localhost未引用命名空间
//实例化WebService实例对象 localhost.WebService WebserviceInstance = new localhost.WebService(); 在实例化WebSer ...
- VC++常见错误原因解析--error LNK2019: 无法解析的外部符号 "public: void __thiscall
根据个人遇到这个错误时的记录,原因可以分为一下几种: 原因一: 只是在.h里面声明了某个方法, 没有在cpp里面实现 . 具体讲,有时候在头文件中声明了需要的方法,确实忘记了在源文件中实现: 有时候在 ...
- LN : leetcode 263 Ugly Number
lc 263 Ugly Number lc 263 Ugly Number Write a program to check whether a given number is an ugly num ...
- The Runtime Interaction Model for Views-UI布局事件处理流程
The Runtime Interaction Model for Views Any time a user interacts with your user interface, or any t ...