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 ...
随机推荐
- 为什么要用Go语言做后端
FMZ数字货币量化平台 www.fmz.com, 后端使用Go语言,这里是创始人Zero谈论使用Go语言所带了的便利.原帖地址:https://www.zhihu.com/question/27172 ...
- VF 查表
题目的意思就是 给你一个数字 n (1~81) 然后问你从 1~10^9 之中有多少个 各位数字之和等于 n 的 数字 我上去 打表了 而且速度还差不多 , 能在 几十分钟内算出来所有答案 ...
- 分享几篇有关react-native的博客
http://segmentfault.com/a/1190000002646155 http://facebook.github.io/react-native/docs/native-module ...
- [C陷阱和缺陷] 第3章 语义“陷阱”
第3章 语义"陷阱" 一个句子哪怕其中的每个单词都拼写正确,而且语法也无懈可击,仍然可能有歧义或者并非书写者希望表达的意思.程序也有可能表面上是一个意思,而实际上的意思却相 ...
- [BZOJ:3162]:独钓寒江雪
题解: 求本质不同的独立集的个数 首先独立集的个数是很好做的 \(f[u][0/1]\)表示节点\(u\)不选/选的方案数 然后dp就是 \(f[u][0] = f[u][0] * (f[v][0] ...
- C#常量知识整理
整数常量 整数常量可以是十进制.八进制或十六进制的常量.前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制. 整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U ...
- 树形DP UVA 1292 Strategic game
题目传送门 /* 题解:选择一个点,它相邻的点都当做被选择,问最少选择多少点将所有点都被选择 树形DP:dp[i][0/1]表示当前点选或不选,如果选,相邻的点可选可不选,取最小值 */ /***** ...
- 用Movie显示gif(1)SimpleGif
代码如下: import android.content.Context; import android.graphics.Canvas; import android.graphics.Movie; ...
- 371 Sum of Two Integers 两整数之和
不使用运算符 + 和-,计算两整数a .b之和.示例:若 a = 1 ,b = 2,返回 3. 详见:https://leetcode.com/problems/sum-of-two-integers ...
- Spring.Net学习笔记(二)-数据访问器
Spring对ADO.NET也提供了支持,依赖与程序集Spring.Data.dll IDbProvider IDbProvider定义了数据访问提供器的基础,配置如下 <?xml versio ...