公司内部C语言笔试题.doc_第1页
公司内部C语言笔试题.doc_第2页
公司内部C语言笔试题.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言基础小测试题公司内部笔试题看看你的基础如何第一题:单项选择1、对下述代码说法正确的是:( c )#include int main(void)charaChar;int aInt;aInt = aChar = -120;printf(%dn, aInt);return 0;A、 一定输出-120 。 B、一定不能输出-120 。C、可能输出-120。 D、输出 %d 2、对下述代码说法正确的是:( d )void main(void)char a = 0, 1, 2, 3;int *p = (int *)a;printf(“%d ”, *p);提示:字符0的ASCII码是 48.A、输出 0 B、输出 48 C、如果CUP是小端的话输出一个负数。D、以上说法都不正确。3、对下述代码说法正确的是:( a )int main(void)unsigned int a = 4;int b = -10;(a + b) 0 ? printf( 0) : printf( 0 B、输出 0 C、没有输出 D、语法错误。4、对下述代码说法正确的是:( d )void main()chara3;charb = “China”;a = b;printf(“%s”,a);A 输出:China B输出:Ch C输出:Chi D编译出错5、运行下述C程序会显示( a )void swap(int *a, int *b)int *temp = NULL;temp = a;a = b;b = temp;void main()int a = 1;int b = 2;swap (&a, &b);printf(“%d,%d”, a, b);A、 输出1, 2. B、输出2,1 C、 swap函数编译出错。D、函数调用出错。6、对下述C代码说法正确的是( )struct studentchar *name;float mark;void main()struct student stud; = (char *)malloc(10);/假设申请成功memset(&stud, 0, sizeof(struct student);strcpy(, “cc”);printf(“%sn”, ); A、输出 cc 。B、没有输出 。C、输出 0 。D、strcpy(, “cc”);出现段错误。7、对下述C代码说法正确的是( )void my_free(void *p)free(p);p = NULL;void main()int *p = (int *)malloc(sizeof(p); /假设申请成功*p = 10;my_free(p);if (p != NULL) *p = 20;A、 语法错误。 B、发生内存遗漏。C、 发生内存重写。 D、既发生内存遗漏又发生内存重写。8、对下述C代码说法正确的是( )void main()const int a = 20;int *p = &a;*p = 30;printf(“%dn”, *p); A、 int *p = &a;报警告或错误。 B、*p = 30;报警告或错误。C、const int a = 20; 报警告或错误。 D、没有警告或错误。9、题目:有关下述代码说法正确的是( )。File1.cstatic int a = 5;File2.c extern int a;int fun() a+; return a;void main(void) printf(“%d”, fun(); printf(“%d”, fun();A. 输出 6 7 C. 输出 6 6 B、编译文件时不报错,连接时报错 D、 编译File2.c时出错10、题目:有关下述代码说法正确的是( )int main() int*intPointer = NULL;double*doublePointer = NULL;intPointer = (int *)malloc(sizeof(int);if (intPointer = NULL)return 0; doublePointer = (double *)malloc(sizeof(double);if (doublePointer = NULL)return 0;*intPointer = 5;printf(内存地址%p的内容是%dn, intPointer, *intPointer); *doublePointer = 12.5;printf(内存地址%p的内容是%dn, doublePointer , *doublePointer); free(intPointer); free(doublePointer);return 0;A、 上述代码可能会发生内存遗漏。B、上述代码有语法错误。C、 上述代码出现段错误。D、上述代码可能会发生内存重写。11、题目: 有关下述代码说法正确的是( )Head.hint a = 10;File1.c#include #include “Head.h”void OutPut(void) printf(“%dn”, a);File2.c#include “Head.h”void OutPut(void);void main(void) a = a + 20; OutPut();A.编译File1.c出错.因为找不到变量a.B.编译File2.c出错.因为找不到函数void OutPut(void);C.连接时出错. 因为找不到函数void OutPut(void);D.连接时出错.因为重复定义了变量a.E.语法正确,输出30.第二题:填空题1、填写下列代码运行的结果#include int a = 5;void change(int *p)*p = &a;*p = 10;void main(void)int b = 20;int *p = &b;change(&p);printf(%d,%d, %dn, a, b, *p);输出 2、填写下列代码运行的结果。void main(void)int a23 = 1, 2, 3, 4, 5,6 ;int *p = (int *)(a + 1); p-; printf(“%dn”, *p);输出 3、填写下列代码运行的结果。void main(void)int a23 = 1, 2, 3, 4, 5,6 ;int *p = (int *)(a0 + 1); p-; printf(“%dn”, *p);输出 4、填写下列代码运行的结果。void main(void)int a23 = 1, 2, 3, 4, 5,6 ;int *p = (int *)(&a + 1); p-; printf(“%dn”, *p);输出 5、填写下列代码运行的结果。void main(void)int a23 = 1, 2, 3, 4, 5,6 ; printf(“%d, %d”, sizeof(a), sizoe(a1);输出 (32位机)6、填写下列代码运行的结果。int main()char a23 = a, b, c, d, e, 0;printf(“%s ”, a0);return 0;输出 7、填写下列代码的输出结果。void fun(char a)printf(“%d, ”, strlen(a); printf(“%d, ”, sizeof(a);printf(“%dn”, sizeof(*a);void main(void) char a = “12345”; fun(a);输出 (32位机)8、填写下列代码的输出结果。struct test int num; char *name; ;void main(void)struct test t1;struct test t2;t1.num = 10; = (char *) malloc(20);/假设分配成功strcpy(, ,“BB“);t2 = t1;t2.num = 20;strcpy(, ,“CC“);printf(“%d, %s, %d, %s“, t1.num, , t2.num, ); 输出 第三题:编程题(注意代码质量、健壮性和效率)1、编写一个函

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论