




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2006本科C语言试题二考第一题 填空题 (每空1分,共10分)1. 设a=3,b=4,c=5,d=6,m=n=2, 则表达式(n=cb)的值为_0_ , m=_0_,n=_1_ .2. 若int a=5, 则表达式(a=4*6,a*2),a+20的值为 44 .3. 设 m=2 , 则表达式j=3+ m- 运算后,j的值为_5_。4. 设x=10,执行x*=2+5后,x的值是_70_。5. 当同名的全局变量与局部变量的作用域重叠时, 在该作用域中 _ _局部_变量有效。6. 表达式1&(5|32)的值为_4_。7. 若x、y均为整型变量,则语句 x+=y; y=x-y; x-=y; 的作用为_x,y 互换_.8. 有以下定义:struct dw float a4; int c; a;则 sizeof(a)的值是_18_ 已知整型占2字节,浮点型占4字节第二题 选择题 (每题1分,共15分)1. 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是( C ) A) 1 B) 2 C) 2.0 D) 2.52. 定义int a 3=2,3,4,5;后,a11的值是( D )。A. 0 B. 3 C. 4 D. 53. 在定义 int a10=1,3,5,7,9,11; 后, 对a数组元素的正确引用是( B )。A. a10 B. a2*3 C. a(5) D. a5.34. 下述程序的运行结果是( C )。#includevoid main()int a33=1,2,3,4,5,6,7,8,9;int s=0,i,j;for(i=0;i3;i+) for(j=0;j3;j+) s+=(*(a+i)j; printf(”%d”,s);A) 13B) 14C) 45D) 165.语句for( x=2; x=5; ) x+; 的循环次数是( ). A. 3 B. 4 C. 5 D. 无限循环6.当从键盘输入含空格的字符串时,应采用( A )函数。A. gets( ) B. scanf( ) C. getc( ) D. getchar( )7.设 a=12 , 则表达式a+=a - =a-2 运算后,a的值为( D )。A. 0 B. 2 C. 3 D. 4 8.设有int i, *p; 则以下正确的语句是( C ).A. i=p; B. p=2*p+i; C. p=&i ; D. p=i+1;9. 设int x = 10, *p=&x; 则printf(“%d n”, *p+);的输出结果( A )A. 10 B. 11 C. 12 D. 1310设有定义:int x33=1,2,3,4,5,6,7,8 ;则语句printf(“%d ”, *(*(x+1)+2) ); 的输出结果是( C )。A. 2 B. 5 C. 6 D. 911. C语言中,程序的开始执行点是( D )。A. 程序中的第一条语句 B. 程序中的第一个函数 C. 包含文件的第一个函数 D. 程序中的main函数12. 设有宏定义 #define M(x) x*(x-1) 则执行int a=1,b=2,c; c=M(1+a+b);后,c=( B )。A. 6 B. 8 C. 12D. 1413.下述程序的输出结果是(D )。#includevoid main()struct complex int x; int y; cnum2=1,3,2,7;printf(”%d”,cnum0.y/cnum0.x*cnum1.x);A) 0B) 1C) 3D) 614有如下程序 main( ) int x=23; do printf(“%d”,x-); while(!x); 该程序的执行结果是( B ) A) 循环23次 B) 23 C) 不输出任何内容 D) 陷入死循环15用fopen打开一个二进制文件,要求该文件既能读也能写,则文件打开方式字符串是( D )。A) “a” B) “wb” C) “rb” D) “a+”第三题 判断题(每题1 分,共7分)正确画 ,错误画 1有参函数的形参在函数没有被调用时不占存储空间。 ()2一个字符型变量的长度是8 bits 。 ()3C语言中的双精度型(DOUBLE)变量可以精确表示全部实数。 ()4空函数由于没有任何作用,所以可以没有函数名。 ()5 函数可以嵌套使用不可以嵌套定义 ()6. 共用体变量所占空间为各成员变量所占空间的总和 ()7. 局部变量肯定是自动变量。 ()第四题 分析以下程序,写出运行结果 (每题4 分,共20分)1 main() int a10, p4 , m , i; m= 0; for( i=0 ; i10 ;i+) ai = i ; for( i=1 ; i=3 ;i+) pi=ai*i; printf(“%3d”, pi); for( i=1 ; i=3 ;i+) m=m+pi; printf(“ n m= %dn” , m); 输出结果: 1 4 9m=14 2. void fun( int x , int *y ) x = 2-x ; *y +=3; main() int a=10 , b=20;printf( “a=%d , b=%dn” , a, b); fun( a, &b); printf( “a=%d , b=%dn” , a, b);输出结果:a=10,b=20 a=10,b=23 3 int func(int x) static int y=0;y=y+x+1;return y; main() int a=5 , i, k ; for( i=1 ; i=4 ;i+) k= func(a); printf(“%d,” , k );输出结果: 6, 12, 18, 244. main( ) int a=24, b=328, c; switch( b/10 ) case 0 : c=a*10 +b; break;case 1: c=a*100+b; break; default: c=a*1000+b;printf(%d,%d,%dn,a,b, c ); 输出结果:24,328,24328 5、main()enum weekmon,tue,wed,thu,fri,sat,sunwe1;enum mon1=8,tue1=3,wed1,thu1,fri1w1,w2;we1=wed;w1=mon1;w2=wed1;printf(%dn,we1);printf(%dn,w1);printf(%dn,w2);输出结果:2 8 4 五、 完善程序(每空1分,共13分)1、用选择法对10个整数排序。实参用指针而形参用数组main() int sort(int x,int n);int *p,i,a10;p=a;for(i=0; (1) i10;i+)scanf(%d,p+);p=a;(2) sort(p,10);for(p=a,i=0;i10;i+)printf(%d,,*p); p+; sort(int x,int n)int i,j,k,t;for(i=0;in-1; (3) i+ )k=i;for(j=i+1;jxj) k=j;if(k!=i)t=xi; xi=xk ; (4) xk=t ; 2输出200以内能被7整除且个位数为1的所有整数。 #include void main() int i,j; for(i=0;j200;i+) j=i*10+1; if ( (5) j%7!=0 ) continue; printf(“%d”,(6) j );3 A为5*2矩阵, B 为2*3矩阵,计算矩阵A*B的积4#include#define M 5#define N 2(7) #define k 3void main()int aMN =1,2,3,4,5,5,4,3,2,1;int bNk= 1,1,2,2,3,3,cMk;int i,j,l,u;for (i=0;i=M-1;i+) for (j=0;j=k-1;j+) (8) cij=0; for (l=0;l=N-1;l+) cij= (9) cij+ail*blj;for (i=0;i=M-1;i+) for (10) j=0;j=k-1;j+) printf(t%d,cij);printf(n);4 采用函数连接字符串,并删除前一个字符串尾部的全部空格#include void cat_string(char first,char secd)char *p;int i=0;for(p=first;*p!=0 ;p+);for(p-;*p=(11) ;p-);p+;while(secdi!=0)*p=secdi;i+;p+;(12)*p=0;main()char a60=I am a teacher. ;char b=you are a student.;printf(string a is: %sn,a);printf(string b is: %sn,b);(13)cat_string(a,b);printf(new string a is: %sn,a);六 编写程序(35分)1. 计算sum= 1+(1+2)+(1+2+3)+(1+2+n) (要求:在main()函数中由用户从键盘输入一个大于等于1的数n, 计算并输出最终结果,编程中要应用函数.)10分#include f_sum(int n) int nsum,i; nsum=0; for(i=1;i=n;i+) nsum=nsum+i; return nsum;void main( )int n,i,sum;sum=0;scanf(%d,&n);for(i=1;i=n;i+)sum=sum+f_sum(i);printf(sum=%d,sum);2将8个数(99,87,85,66,50,40,32,21)按由大到小顺序存放在一个数组中(采用初始化赋值),再由键盘输入一个数,要求找出该数是数组中第几个元素的值,输出此下标。如果该数不在数组中,则打印出“无此数”,编程实现。10分#include void main() int i,n=100 ,flag=1,position;int a8=99,87,85,66,50,40,32,21;printf(nPlease input integer num n : ); scanf(%d,&n); if (n=a7) for(i=0;i8;i+) if(n=ai) position=i; flag=0; printf(n n=%d,position=%d,n,position ); if(flag=1)printf(not in); else printf(无此数);3 循环接收输入的字符,统计其中英文字母、空格、数字字符和其他字符的个数。循环直到输入#键为止,并将#键计算在其他字符内。8分#include void main()int cn=0,dn=0,sn=0,on=0; char ch; do ch=getche(); if(A=ch&ch=Z)|(a=ch&ch=z) cn+; else if(0=ch&ch=9) dn+; else if(ch= ) sn+; else
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 46064-2025混凝土和砂浆用偏高岭土粉
- GB/T 46215-2025金属和合金的腐蚀用目测法和硬度法对电厂部件铜合金和灰铸铁的选择性腐蚀评价
- 2025湖州德清县教育局择优招聘浙江开放大学德清学院和职业类教师15人考前自测高频考点模拟试题及参考答案详解1套
- 2025江苏海晟控股集团有限公司下属子公司招聘高级管理人员人员模拟试卷有完整答案详解
- 2025年牡丹江绥芬河市博物馆公开招聘讲解员招聘4人考前自测高频考点模拟试题及一套答案详解
- 安全培训教学课件
- 广播电视文体写作课件
- 2025广西柳钢集团技术技能人才社会招聘考前自测高频考点模拟试题及一套答案详解
- 2025江苏盐城市第七人民医院招录政府购买服务用工14人考前自测高频考点模拟试题附答案详解(模拟题)
- 2025福建厦门鼓浪湾大酒店有限公司(第二批)招聘5人模拟试卷及答案详解(各地真题)
- 财税服务公司费用报销问题研究
- 安全生产例会会议记录以及会议内容
- 眼视光技术介绍
- 危险品运输资格(装卸管理人员)考试2025年题库及答案
- DB64T 2146-2025 工矿企业全员安全生产责任制建设指南
- 电子设备调试工基础技能培训手册
- 间歇充气加压用于静脉血栓栓塞症预防的中国专家共识解读
- 巨量千川-内容创意(初级) 营销师认证考试题及答案
- 氧气吸入操作并发症及防治
- 展会礼仪培训课程
- 仪表工安全培训
评论
0/150
提交评论