已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C 语言程序设计模拟题一、选择题(共15分,每题 1分 )1C以下叙述中,正确的是 。A. 在C程序中,main函数必须位于程序的最前面B. C程序的每一行只能写一条语句C. C语言本身没有输入输出语句D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误2B C语言表达式 a=15,a%6的值是 。A. 15B. 3C. 2D. 非法表达式3. D若x是整型变量,y是单精度浮点型变量,值为10,表达式 x=y/4的值是 。A. 2.5B. 2.0C. 3D. 24. B 循环语句中,continue语句的作用是 。A. 终止程序B. 结束本次循环C. 从本循环体内跳出D. 跳出子函数5. B 下列 语句定义p为指向double类型变量x的指针。A. double x, *p=x;B. double x, *p=&x;C. double *p=&x , x;D. double x, p=x;6. D 下面四个程序段中,不能输出23个*号的程序段是 。A. for(int i=0; i0; j-) putchar(*);C. int k=23; while(k0) putchar(*); k-;D. int i=0; while(i23) putchar(*); i+; 7. B以下对结构体变量stu1中成员age的非法引用是 。stuct student int age; int num;stu1, *p=&stu1;A. stu1.ageB. student.ageC. p-ageD. (*p).age8. D 设有变量定义 int x, a=3, b=4; 则语句 x=(a=0)&(b=8); 执行之后各变量的值为 。A. x=0, a=0, b=8B. x=1, a=3, b=4C. x=1, a=0, b=8D. x=0, a=0, b=49.A C语言中的标识符只能由字母、数字和下划线组成且第一个字符 。A. 必须为字母或下划线B. 必须为下划线C. 必须为字母D. 可以是字母、数字或下划线中的任一个10.C 若希望A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是 。A. A%2=1B. !(A%2=0)C. !(A%2)D. A%211B 下面运算优先级按从高到低的排列顺序是 。A. 算术运算、逻辑运算、关系运算B. 条件运算、赋值运算、逗号运算C. 逻辑运算、关系运算、赋值运算D. 位运算、算术运算、赋值运算12B以下程序段的输出结果为: 。for ( i=4; i1;i- )for ( j=1; ji; j+ ) putchar(#);A. #B. #C. #D. #13A while循环为当型循环,其特点是 。A. 先判断表达式,后执行语句B. 先执行语句,后判断表达式C. 只判断表达式D. 直接执行语句14A 下列标识符中,不合法的标识符为: 。A. a#bB. _intC. a_10D. Pad15 B 设x,y和z是int 型变量,且x=3,y=4,z=5,则下面表达式中值为0的是 。A. y & yB. x=y & y!=zC. x|y+z & y-zD. !(xy) & !z | 1二、填充题(共 30 分,每题 2分)1、表达式strlen (“C2009”) 的值是_5_2、设int a=3,b=4,c=5; 则a*a+b*b=c*c的结果为_1_3、设a=2,b=3,x=3.5,y=2.5, 表达式(float)(a+b)/2+(int)x%2/4 的值为 2.5 4、下面这些运算符中 :%, /, + ,* ,要求运算量是整型的是 % 5、已知: int i=0, j=10, k; 完成 下列循环后,k的 值是 10 for ( ;i=j; i+,j-) k=i+j;6、已知:int a=5; ,计算表达式 a-=a*=a+=a/a 后,变量 a的值 是 0 7、已知:int a=2; ,表达式 a%2+(a=5) 的值 是 5 8、下列运算符中: !, +=, &, %=, | , 优先级相同的是 +=, %= 9、已知 : int a=1, b=0, c=1; 计算表达式 !b|+a&+c的值后,c的值是 1 10、有返回值的函数体内应加条 return 语句 11、下列函数 fun() 被调用了 3次,a的值 是 4 fun() static int a=1; +a;12、在下列调用函数中,实参的个数是 3 fun( a1, (a2,a3),(a4,a5,a6);13、下列结构变量 m的成员 a 的表示应该是 m.a struct xy int a; double b; m;14、已知: char a=”abcde”,*p; 表达式 *(p+5)的值 为 0 15、指针存放的值 是 它所指向的变量的地址值 三、程序填空(共 30分,每空 3分 )1、从键盘输入一字符,如果为Y,则打印是;为N,打印否,其他字符打印输入错误。#include main() char a; printf(输入一个字符:); a=getchar(); _ /答案: if( a= =Y | a= =N ) if (a= =Y) printf( 是); else printf( 否); else printf( 输入数据不合要求);2、输入一个整数n,计算累加和(1+2+3+.+n)并输出。main() _ /答案:int i, n, sum=0; scanf( %d, &n ); for ( i = 0; i = n; i+ ) sum += n; _ /答案:printf( %d, sum );3、查找100至999之间所有符合以下条件的数:它是另一数的平方,且至少有两位数是相同的。如数144,它是12的平方,其中有两位4。main() int n,m,a,b,c; for ( n = 10; n = 31; n+ ) _ /答案:m = n*n; a=m%10; b = m / 10 % 10; c = m / 100 % 10; _ /答案: if ( a= =b | b= =c | a= =c ) printf( %d , m ); 4、输入n个整数,判断它们是否有重复,如果没有重复输出yes,否则输出No。 #include #define N 100main() int aN, n, i, j, isyes=1; scanf( %d, &n ); for ( i=0; in; i+ ) scanf( %d, &ai ); _ /答案: for ( i=0; in; i+ ) for ( j=0; jn; j+ ) _ /答案: if ( ai= =aj & i != j ) isyes=0; if ( isyes= =0 ) printf( Non );elseprintf( Yesn );5、统计字符换str中字符#与数字字符的个数。#include#includemain() charstr81; _ /答案: intn1=0,n2=0; gets(str); for ( i = 0; stri ! = 0; i+ ) if ( str i= ) n1+; _ /答案:if (stri=0 & stri = 9 ) n2+; printf( #=%d, digit=%dn, n1, n2 );6、 下列函数用冒泡法对一维整数数组中的数据进行从小到大的排序,请填空。void sort(int a,int n) int i, j; for( i=0; i n-1; i +) for ( _ _ ) /答案: j=0; jaj+1) t= aj; aj = aj+1; aj+1 = t; 四、编程题(25分)1. 在源程序文件“C:素材StrCount.c”中,编写程序,完成以下功能,并将StrCount.c文件保存到“C:KS”文件夹(10分):从键盘上输入一行字符串,分别统计字符串中英文字母、空格、数字和其它字符的个数。2. 学生基本信息存放在数据文件“C:素材StuInfo.dat”中,每位学生记录以下数据:学生编号(整型)、学生姓名(字符型),具体数据结构见源程序文件。在源程序“C:素材StuMana.c”文件中,补充函数完成以下功能,并将StuMana.c文件保存到“C:KS”文件夹。(函数定义见源程序文件)(15分)。(1) 从数据文件中读取每位同学的编号和姓名信息(5分);(2) 在屏幕上每显示一位同学的编号和姓名后,输入该同学身高(5分)。(3) 所有同学身高输入完成后,计算并显示所有同学的平均身高(5分)。/* 请在此文件中完成以下两个函数实现,并调试程序,实现程序功能 */* int readFile( struct stuinfo stu ); */* void input_high( struct stuinfo stu, float high, int n ) */ /* */* 其它函数内容请勿更改 */#include #include #include struct stuinfoint serial; /学生编号char name10; /学生姓名;int readFile( struct stuinfo stu );void input_high( struct stuinfo stu, float high, int n );void write_data();void main()struct stuinfo stu30;float stuHigh30;int stuNum;int topStu=0;/write_data();stuNum = readFile( stu );input_high( stu, stuHigh, stuNum );return ;/* 从文件StuInfo.dat中读出各位学生记录,以及记录个数 */* 学生记录存放在数组 stu中,函数返回学生人数 */int readFile( struct stuinfo stu ) FILE *fp; int stunum,i=0; if(fp=fopen(StuInfo.dat,rb+)=NULL) printf(file cant open!); exit(0); stunum = fread(stu,sizeof(struct stuinfo),30,fp); fclose(fp); return stunum;/* 输入每个学生的身高信息 */* 显示每位同学基本信息后,输入该同学的身高 */* 计算并显示所有同学的平均身高 */void input_high( struct stuinfo stu, float high, int n ) int i; float ave=0; for(i=0;in;i+) printf(%d,%sn,stui.serial,); printf(请输入该学生的身高:); scanf(%f,&highi); ave=ave+highi; printf(所有学生的平均身高是:%fn,ave/n);/* 从键盘上输入学生信息,保存到StuInfo.dat文件中 */void write_data( )FILE *fp;struct stuinfo stu30;int i, stuNum=0;printf(Please input student number( 30 )printf(data error);exit(1);for( i=0; i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB 5135.2-2025自动喷水灭火系统第2部分:湿式报警阀、延迟器、水力警铃
- 2025年中国餐饮行业ESG实践报告
- 干洗店服务合同(衣物保价·破损赔付版)
- 2025年保险销售岗年终保单成交总结与客户留存报告
- 2026-2031年中国PCB盖垫板市场调研分析及投资战略研究报告
- 岳池县酉溪镇人民政府关于公开招聘社区专职网格员的备考题库含答案详解(综合题)
- 2025陕西宝鸡市眉县招聘社区专职工作人员10人备考题库及答案详解(易错题)
- 2026上海公共服务徐汇区社区工作者招录86人备考题库 (第三批)含答案详解(典型题)
- 2026年中国邮政储蓄银行河北分行秋季校园招聘备考题库含答案详解(典型题)
- 2025年嘉兴桐乡市总工会招聘工会社会工作者6人备考题库附答案详解(完整版)
- 《胃肠道相关淋巴瘤》课件
- 《医疗风险与法规》课件
- 苏州某多层框架结构厂房施工组织设计(6层)
- GB/T 13460-2025再生橡胶通用规范
- 2025陕西金融资产管理股份有限公司员工招聘(26人)笔试参考题库附带答案详解
- 太阳能灯具设计与创新-全面剖析
- 2025年部编版小学语文3-6年级单元“语文要素”+“习作表达要求”
- 数字化时代高校教学模式的变革与重构
- 2025年辽河石油职业技术学院单招数学题库
- 子女已成年离婚协议书模板
- DGTJ 08-2176-2024 沥青路面预防养护技术标准(正式版含条文说明)
评论
0/150
提交评论