




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东华大学200 200 学年第 学期期终试题踏实学习,弘扬正气;诚信做人,诚实考试;作弊可耻,后果自负。课程名称 程序设计基础(C) 使用专业 班级_姓名_学号_ 试题得分一二三四五六七八九十总分 单项选择题(每题2分,共40分)1、 正确表示“当x的取值在1,10或200,210范围内为真,否则为假”的表达式是 ( C ) A. (x1)&(x10)&(x200)&(x210) B. (x1)|(x10)|(x200)|(x210) C. (x1 & x10)|(x200 & x210) D. (210=x=200)|(10=x=1)2、以下程序的输出结果是 ( D )void main() int a, b;for(a=1, b=1; a=10) break;if (b%3=1) b=b+3; continue; printf(%dn,a);A. 101 B. 6 C. 5 D. 4 3、若用数组名作为函数调用时实参,则实际上传递给形参的是 ( A )A数组首地址 B. 数组的第一个元素值C数组中全部元素的值 D. 数组元素的个数4、要求以下程序的功能是计算:s=1+1/2+1/3+1/100void main()floats = 1.0;for( int n=1;n=100;n+)s=s+1/n;printf(s=%fn,s);程序运行后输出结果错误(输出为2.0),导致错误结果的程序行是 ( C ) A. s=1.0; B. for(int n=1;n=0; i-) sum(&aai); printf(“%dn”,aa0);执行后的输出结果是 ( A )A. 4 B. 3 C. 2 D. 112、以下程序的运行结果是 ( A ) char *p=abcde; p=p+2; printf(%s,p);A. cde B. 字符c C. abcde D. 字符c的地址 13、已有定义 int k=2; int *ptrl, *ptr2;且 ptrl和 ptr2均已指向变量 k,下面不能正确执行的赋值语句是 ( B ) A. k=*ptr1*ptr2; B. ptr2=k; C. ptrl=ptr2; D. k=*ptrl*(*ptr2);14、以下代码段有错误,错误原因是 ( A ) int *p, i; double *q, ch; p=&i;q=&ch;*p=40;*p=q;A*p和q的类型不一致,不能执行*p=q;语句B*p中存放的是地址值,因此不能执行*p=40;语句Cq没有指向具体的存储单元所以q的值没有实际意义Dq虽指向具体的存储单元,但该单元中没有确定的值,故不能执行*p=q; 语句15、下列程序段的输出结果是 ( B )int t=0,a3 = 10,5,1;int *p;for(p =a; pa+3; p+)t =t + *p;printf(“%d” ,t);A. 15 B. 16 C. 10 D. 不确定,因为不知p地址内的值16、有以下程序 void main() for (int i=0; i=0;ps-) printf(%s,ps);执行后输出结果是 ( D ) A. zyx B. z C. zy D. zyzxyz19、下列程序的输出是 ( A )#includeint aa=10;void fn() int aa=99; printf(%d,aa);void main () printf(%d,aa); fn(); printf(%d,aa);A)10,99,10 B)10,99,99 C)10,10,10 D)99,99,9920、有以下程序的输出结果是 ( D ) void main() char a=programming, b=language; char *p1,*p2; p1=a; p2=b; for(int i=0;i7;i+) if(*(p1+i)=*(p2+i) printf(c,*(p1+i); A) gm B) rg C) or D) ga 写出下列程序的运行结果(每题4分,共40分) #include void main () int x = 10023;while(x!=0) 解答:3#2#0#0#1# printf (“%d#”, x%10);x = x / 10; #includevoid main() int count = 0; for(int i=0; i3; i+) for(int j=0; j4; j+) 解答:count=11 +count; if(i=2&j=2) break; printf(count=%dn,count); #include func(int b) for(int j=0;j4;j+) bj=j;void main() 解答: 0int a4; 1 func(a); 2for(int k=0;k4;k+) 3printf(“%dn”,ak); #includestruct date int year; int month; int day;void func(struct date *p) p-year = 2000; p-month = 5; p-day = 22;void main() 解答: 1999,4,23 2000,5,22 struct date d; d.year = 1999; d.month = 4; d.day = 23; printf(“%d,%d,%dn”, d.year, d.month, d.day); func(&d); printf(“%d,%d,%dn”, d.year, d.month, d.day); #includevoid Fun(int *y) printf(*y = %dn, *y);*y = 20; printf(*y = %dn, *y);void main() 解答: x=10 *y=10int x = 10; *y=20printf(x = %dn, x); x=20Fun(&x);printf(x = %dn, x); #include#define ADD(x) x+xvoid main() 解答: m=2,n=3 int m=2,n=3; sum=11 int sum=ADD(m)*ADD(n); printf(m=%d,n=%dn,m,n); printf(sum=%dn,sum); #include #include #define N 5void main() 解答:sp=6,abcdef char * strN=abcd,abcdef,ab,abc,a, * sp = str0;for(int i=1; iN; i+) if(strlen(sp)strlen(stri) sp = stri; printf(sp=%d,%sn,strlen(sp),sp); #include stdio.h#define N 4void main( ) int a44 = 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;int i,j, row,col,max; for(row=0; rowN; row+)col=0;max=arow0; for(j=0; j=max) max=arowj; col=j; for(j=0; jN; j+) if(ajcolmax) break; if (j=N) printf(a%d%d=%dn, row, col,arowcol); break; 解答:a03=4if (row=N) printf(Not found!n); 编程题(20分)程序功能是将一字符串做压缩处理。编程要求:(1)编写一个函数int compress(char s),将s中连续出现的多个相同字符压缩为一个字符,统计被删除的字符个数,,返回被删除的字符个数。(10分)例如:“abbbcddddeff”将被压缩为“abcdef”(2)编写主函数main,从键盘读入一行字符数据放入一个字符型数组中,调用compress函数对该字符数组中字符做压缩处理,将压缩后的字符串写入结果文件myf2.out中。(10分)方法一:#include stdio.hint compress(char s)int n=0;char *p,*q;for(q=p=s; *p; )if(*p=*(p+1)while(*p=*(p+1) p+;n+; *q+=*p+;*q=0;return n;void main()char ss100;gets(ss);printf(一共去除重复字符%d个n,compress(ss);FILE * fp;if(fp=fopen(myf2.out,w)=NULL)printf(文件打开失败!); return;fprintf(fp,%s,ss);fclose(fp);方法二: #include stdio.h#include string.hint compress(char s)int n=0,tp=1;char temp1000=s0;for(int i=1; si; i+) if(si!=si-1) temptp+=si;temptp=0; n=strlen(s)-strlen(temp);strcpy(s,temp);return n;void main()char ss100;gets(ss);printf(一共去除重复字符%d个n,compress(ss);FILE * fp;if(fp=fopen(myf2.out,w)=NULL)printf(文件打开失败!); return;fprintf(fp,%s,ss);fclose(fp);方法三: #include stdio.h#include string.hint compress(char s)int n=strlen(s),tp=1;for(int i=1; si; i+) if(si!=si-1) stp+=si;stp=0;return n-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025河南郑州一建集团校园招聘模拟试卷及答案详解(易错题)
- 2025家用电器购销合同模板
- 2025年北京市新建住宅项目前期物业服务合同
- 2025年河北地质大学选聘工作人员85名模拟试卷及答案详解一套
- 2025年春季中国化学校园招聘模拟试卷完整参考答案详解
- 2025内蒙古赤峰市红山区“绿色通道”引进教师94人考前自测高频考点模拟试题及答案详解(名师系列)
- 2025内蒙古巴彦淖尔城市发展投资(集团)有限公司招聘7人考前自测高频考点模拟试题有答案详解
- 2025贵州安顺市参加“第十三届贵州人才博览会”引才招聘271人模拟试卷附答案详解(完整版)
- 2025内蒙古工业大学百名博士高层次人才引进197人模拟试卷及完整答案详解1套
- 人保寿险考试题库及答案
- 2025国企竞聘上岗与干部竞聘上岗笔试题及答案
- 武科大大学生手册考试内容及答案
- 2025年中国家用WiFi路由器行业市场全景分析及前景机遇研判报告
- 2025年领导干部任前廉政法规知识考试题库(含答案)
- 2025年四川基层法律服务工作者执业核准考试仿真试题及答案一
- 食材配送服务方案投标方案【修订版】(技术标)
- 儿童再生障碍性贫血(课堂PPT)
- 贵州大学本科毕业论文(设计)评分标准及成绩评定表(自然科学类)
- 京丰宾馆路线图
- 前药设计原理及应用
- 《一小时轻松掌握口腔规范化摄影》PPT课件(完整版)
评论
0/150
提交评论