重邮2018C语言程序设计考试,2016年重庆邮电大学通信与信息工程学院C语言程序设计考研复试题库...

一、选择题

1. 以下不能将s 所指字符串正确复制到t 所指存储空间的是( )。

A. B. C. D.

答:C

【解析】C 项,能够实现将s 中除了字符串结束标志的字符以外的所有字符复制到t 中,字符串t 是不完整的。

2. 有以下程序:

运行时,若输入123450,则输出结果是( )。

A.6566456

B.66656

C.66666

D.6666656

答:A

【解析】输入1:执行easel ,输出6,没有遇到break ,继续执行case2,输出5,遇到break ,跳出;

输入2:执行case2,输出6,遇到break ,跳出;

输入3:执行case3,输出6,没有遇到break ,执行default ,输出4;

输入4:执行default ,输出5;

输入5:执行default ,输出6。

最后输出结果是6566456。

3. 如有表达式

A.w==l

B.w==0

c.

D.

答:D 则其中与w 等价的表达式是( )。

【解析】在C 语言中,没有专门的“逻辑值”,而是用非0表示“真”,用0表示“假”。此条件表达式的形式为?:, 当表达式1的值为真,即为非零时,求出表达式2的值作为结果;当表达式1的值为假,求出表达式3的值作为结果。可见表达式W

,不为1时返回(++y)等价于W!=0。A 项,w==l表示当w 的结果为1是返回(-X )。

4. 有以下程序:

程序的运行结果是( )。

A.0

B.9

C.6

D.8

答:C

【解析】函数f 是递归函数,递归的终止条件是X 为1或2。返回值为3,即

5. 有以下程序:

程序运行后的输出结果是( )。

A.A

B.a

C.H

D.h

当时所以

答:D

【解析】首先将H 赋给变量a ,问号前一个表达式成立,问号后面减去一个大写字母A 再加上小写字母a 实际是将原来的大写字母转换成小写字母,即H 转换成h ,再将结果赋给a 。

6. 以下叙述中正确的是( )。

A.C 程序的基本组成单位是语句

B.C 程序中的每一行只能写一条语句

C. 简单C 语句必须以分号结束

D.C 语言必须在一行内写完

答:C

【解析】C 程序的基本组成单位是函数,A 项错误;C 程序以分号作为每个语句结尾,一行能写多条语句, 也可以将一条语句分几行书写,BD 两项错误;而简单C 语言语句必须以分号结束,所以C 项正确。

7. 有如下程序:

程序运行后的输出结果是( )。

A.12

B.14

C.20

D.13

答:C

【解析】整型常量中,十进制整常量没有前缀,输出格式控制符为

为前缀,输出格式控制符为十六进制整常量以或八进制整常量以0作十六作为前缀,输出格式控制符为进制数表示成十进制数为19,以十进制格式输出故C 项正确。

8. 以下程序中函数f 的功能是:当flag 为1时,进行由小到大排序;当flag 为0时,进行由大到小排序。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言程序设计实验报告 "实验名称 "控制语句 " "学 院 "材料与冶金学院 "专业班级 "材料成型及控制工程044班 " "姓 名 "胡冬梅 "学 号 "20041432 " "任课教师 "高克宁 "实验时间 "200612 月5 日 " 实验目的 1.熟练掌握if、if...else、if...else if语句,掌握if语句中的嵌套关系和匹配原则,利用if语句实现分支选择结构。 2.熟练掌握for语句格式及使用方法 3.掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧.进一步学习调 试程序,掌握语法错误和逻辑的检查方法。 4.掌握C函数的定义方法,函数的调用方法,参数说明以及返回值,掌握实参与形参 的对应关系以及参数之间的"值传递"的方式。 5.在编程的过程中加深函数调用的设计思想。 实验内容 输入一个数值,计算并输出该数值以内最大的10个素数以及它们的和. 要求: (1) 在程序内部加必要的注释. (2)要对小于该数以内不够10个素数的情况进行处理. (3)输出的形式为:素数1+素数2+...+素数10=总和值. 算法描述流程图 主函数流程图: 判断素数函数流程图: 源程序 int a(int n) /*设计一个求素数的函数*/ { int i; for(i=2;i<=n/2;i++) if(n%i==0) return 0; /*不是素数则返回0*/ return 1; /*是素数则返回1*/ } main() {int i=1,n,sum=0,k; printf("Input a number:"); scanf("%d",&k); /*输入一个整数*/ for(n=k;n>1;n-=1) { if(a(n)) /*调用a(int n)函数,判断是否为素数*/ { if(i==1) printf("%d",n); else printf("+%d",n); /*是素数以和的形式输出*/ sum+=n; /*是素数则求和*/ i++; } if(i==11) break; /*当i>10时就退出循环*/ } printf("=%d\n",sum); if(i<=10) printf("not shuchu.\n"); /*当i〈10时,程序结束*/ } 测试数据 测试数据为10,100,1000. 运行结果 当测试数据为10时: 当测试数据为100时: 当测试数据为1000时: 出现问题及解决方法 1)在本实验中,需按要求的格式输出"素数1+素数2+...+素数10=总和值.",因采用 循环 for(n=k;n>1;n-=1) { if(a(n)) { if(i==1) printf("%d",n); else printf("+%d",n); sum+=n; i++; } if(i==11) break; } printf("=%d\n",sum); 从而使输出结果符合题目要求; 2)要对不足10个的素数进行处理,因而要加入"if(i<=10) printf("not shuchu.\n");" 实验心得 通过该实验,我对分支(if,if``else,if```else if```)和循环结构(for,while,do```while)的几种用法更加熟练,并掌握了函数的定 义与调用,参数说明以及返回值使用。并对C程序设计有了总体的认识。 ----------------------- c语言上机实验报告报告全文共5页,当前为第1页。 c语言上机实验报告报告全文共5页,当前为第2页。 c语言上机实验报告报告全文共5页,当前为第3页。 c语言上机实验报告报告全文共5页,当前为第4页。 c语言上机实验报告报告全文共5页,当前为第5页。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值