软件工程公司面试试题.doc

软件工程公司面试试题.doc

ID:57336542

大小:39.50 KB

页数:8页

时间:2020-08-12

软件工程公司面试试题.doc_第1页
软件工程公司面试试题.doc_第2页
软件工程公司面试试题.doc_第3页
软件工程公司面试试题.doc_第4页
软件工程公司面试试题.doc_第5页
资源描述:

《软件工程公司面试试题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、姓名:日期:年月日答题时间:一、请你就C/C++或者JAVA代码行数、注释行数统计工具的实现,描述一下:1、需要考虑哪些过滤条件?你如何处理?答:过滤条件:(取得每行并去掉两头的空格后)⑴空行,行的长度为0;⑵如果是以//开头,为注释行;⑶//在行中,并判断不是在字符串中,即“”中,为代码+注释混合行,//在“”中时为代码行;⑷如果/在行中,判断是否是在“”内,否则为注释行,/不在“”中时是结束;⑸//只在一行,判断行中是否有代码,无代码为注释行,有代码是混合行;⑹//多行,并且/前无代码,/后无代码,去掉其中空行都是注释行;⑺//多行,/在代码后,或/后有代码,有混合

2、行;⑻一行中有2个/并且就1个/,此行为混合行,其后是注释行。2、怎样提升这个工具的易用性?答:把这个工具设置成图形界面,用户只需输入文件名或者在文件对话框中选择文件即可点击运行输出结果。本题只需要提供思路文档,不需要程序代码。二、给定一个自然数n,试完成如下程序,它输出不大于n的所有素数(质数)。1、请提供程序代码,以及思路文档。答:思路:求出一个数j的平方根sqrt(j),将j除以2~sqrt(j)之间的数,只要除尽一次,就不是素数,之后数j加2。#include#includevoidmain(){intN=1000;inti,j

3、,k,m=0;for(j=1;jk)//除到k一直没除尽,是素数/printf("%d",j);}}1、请分析一下可以从哪些角度可优化该程序的时间性能?答:偶数(除了2)不能为素数;判断一个数j是否为素数,只要将其除以2~sqrt(j)之间的素数,更进一步,没有必要对所有奇数进行试除,只需对所有sqrt(j)以内的所有质数试除就可以了。三、高精度乘法用户输入两个不大于256位的正整数,

4、由程序进行乘法运算,并显示运算过程与结果。例:输入:12,32输出:12×32————————2436————————384#include#include#include#definemax256intA[max],B[max];intAlen,Blen;intS[max2];voidInputAB()//输入AB{intc;while(!isdigit(c=getchar()));Alen=1;A[0]=c-'0';while(isdigit(c=getchar()))A[Alen++]=c-'0';while

5、(!isdigit(c=getchar()));Blen=1;B[0]=c-'0';while(isdigit(c=getchar()))B[Blen++]=c-'0';}voidPrint(intArray[],intlen)//输出数组{inti=0;while((i

6、intzeros)//相乘{inti;for(i=len-1;i>=0;i--)Result[i+1]=Array[i]n;Result[0]=0;for(i=len;i>0;i--){if(Result[i]>=10)//大于10的进位{Result[i-1]+=Result[i]/10;Result[i]%=10;}}for(i=1;i<=zeros;i++)Result[len+i]=0;}voidAdd(inttotal[],inttlen,constintadd[],intalen)//各行相加{inti,k=tlen;while((tlen>0)&&(ale

7、n>0))//相加{tlen--;alen--;total[tlen]+=add[alen];}for(i=k-1;i>=0;i--)if(total[i]>=10)//大于10的进位{total[i-1]+=total[i]/10;total[i]%=10;}}voidmain(){inti,j;inttemp[max2];InputAB();Print(A,Alen);printf(“”);Print(B,Blen);printf("-----");for(i=Blen-1;i>=0;i--){for(j=Blen-i,j>=0;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。