您好,欢迎访问三七文档
在技术面前,我永远是新手北京易初电子技术有限公司1of6易初电子软件工程师入职试卷二(C语言)姓名:成绩:以下试卷重点考察员工的C语言、UNIX、数据库(基于ORACLE)和网络编程常识。试卷总分为100分,要求时间为2个小时。对于C语言不熟悉的应聘者,可以申请调换成JAVA试卷。一、单选题(2*13)1.若X和Y都是INT型变量,X=100,Y=200,且有下面的程序片段:PRINT(“%d”,(X,Y));上面程序片段的输出结果是()A)200B)100C)100200D)输出格式符不够,输出不确定的值2.下面各语句行中,能正是行赋字符串操作的语句行是()A)CHARST[4][5]={“ABCDE”};B)CHARS[5]={'A','B','C','D','E'};C)CHAR*S;S=“ABCDE”;D)CHAR*S;SCANF(“%S”,S);3.若K是INT型变量,且有下面的程序片段:K=--3;IF(K《=0》PRINTF(“####”)ELSEPRINTF(“&&&&”);上面程序片段的输出结果是()A)####B)&&&&C)####&&&&D)有语法错误,无输出结果4.若要用下面的程序片段使指针变量P指向一个存储型变量的动态存储单元;INT*P;P=────MALLOC(SIZEOF(INT));则应填入()A)INTB)INT*C)(*INT)D)(INT*)5.若有下面的程序片段:inta[12]={0},*p[3],**pp,i;for(i=0;i《3;i》p[i]=&a[i*4];pp=p;则对数组元素的错误引用是()在技术面前,我永远是新手北京易初电子技术有限公司2of6A)PP[0][1]B)a[10]C)P[3][1]D)*(*(P2)2)6.请读程序:#includestdio.hmain(){floatx,y,z;scanf(%f,&x);scanf(%f,&y);z=x/y;while(1){if(fabs(z)){x=y;y=z;z=x/y;break;}elsebreak;}printf(%f\n,y);}若运行时从键盘上输入3.62.4(表示回车),则输出结果是()A)1.500000B)1.600000C)2.000000D)2.400000]7.请读程序:#includestdio.hf(intb[],intn){inti,r;r=1;for(i=0;i=n;i++)r=r*b[i];returnr;}main(){intx,a[]={2,3,4,5,6,7,8,9};x=f(a,3);printf(%d\n,x);}上面程序输出结果是()A}720B}120C}24D}68.请读程序:#includestdio.hvoidfun(char*s){chara[10];strcpy(a,STRING);s=a;}在技术面前,我永远是新手北京易初电子技术有限公司3of6main(){char*p;fun(p);printf(%s\n,p);}上面程序的输出结果是()A}STRINGB}STRINGC}STRINGD}不确定的值9.请读程序:#includestdio.hvoidfun(float*p1,float*p2,float*s){s=(float*)calloc(1,sizeof(float)),*s=(*p1)*(*p2);}main(){floata[2]={1.1,2.2},b[2]={10.0,20.0},*s=a;fun(a,b,s);printf(%f\n,*s);}上面程序的输出结果是()A)11.100000B)12.100000C)21.100000D)1.10000010.在scounix系统中最常用的中断键为()A.delete键B.Insert键C.回车键D.空格键。11.在unix环境中,查看文件系统空间使用状态的命令为()A.df-vB.duC.lsD.dir。12.在unix环境中,查看当前有哪些进程在运行的常用命令是()A.pwdB.df-kvC.ps-eD.dfspace13.在unix环境中,下列那个命令可以在屏幕上显示文本文件abc.txt中的内容()A.rmabc.txtB.catabc.txtC.echoabc.txtD.typeabc.txt。二、填空题(2*5)1、为了使unix系统正常关机,在关闭电源前必须先用_______________命令或_______________命令。2、用tar命令把当前目录下的所有目录和文件打包为文件easy.tar的命令为在技术面前,我永远是新手北京易初电子技术有限公司4of6_______________,相应的easy.tar解开到当前目录下的命令为_______________。3、在用ftp传送多个文件时,一般用mput命令,为了避免在传输每个文件时都要输入‘y’确认,可以在mput命令之前先输入_______________命令。三、程序分析,给出下列各程序的执行结果(输出)(7*2)1.voidas(intx,inty,int*cp,int*dp){*cp=xy;*dp=x--y;}main(){inta=4,b=3,c,d;as(a,b,&c,&d);printf(“%d%d、”,c,d);}2、main(){charch[2][5]={693,825},*p[2];inti,j,s=0;for(i=0;i2;i++)p[i]=ch[i];for(i=0;i2;i++)for(j=0;p[i][j]='0'&&p[i][j]='9';j+=2)s=10*s+p[i][j]-'0';printf(%d\n,s);}四、C程序编写(4*5)1、本程序从键盘输入一个5*5整型数组赋值,找出其中的最小值并显示出来。2、本程序从键盘输入10个整数存入一数组中,然后将该数组中的各元素按逆序存放后显示出来。在技术面前,我永远是新手北京易初电子技术有限公司5of63、本程序演示判断101-200之间有多少个素数,并输出所有素数。4、本程序演示输入两个正整数m和n,求其最大公约数和最小公倍数。五、简答题(30)1.有表结构如下:CREATETABLEbook(namechar(20),authorchar(20),pricefloat);该表用来记录不同图书的作者和价格,其中name表示书名,author表示作者,price表示该书的价格。请根据下列要求写出相应的sql语句。(2*5)1)查找出作者为“John”的书的总数和价格的合计数。2)将书名为“sky”的所有记录的价格更改为100.00。3)往表book中插入书名为“mytrace”,作者为“Tom”,价格为38.00的记录。4)按作者分组找出所有作者和其对应的书的总数。5)将表book中的所有数据用unload卸载到文本文件book.txt中。在技术面前,我永远是新手北京易初电子技术有限公司6of62、请简单解释以下数据库概念。(10)a、视图:b、主键:c、外键:d、触发器:e、存储过程:3、写出unix下至少五个socket编程的基本函数(包括参数)及功能说明(10)
本文标题:C软件工程师试卷2
链接地址:https://www.777doc.com/doc-163400 .html