回型数组 C语言上机题,2014年全国计算机等级二级C语言上机考前预测(含答案)6...
一、程序填空题
函数fun()的功能是:逆置数组元素中的值,形参m给出数组中数据的个数。
例如,若x所指数组中的数据依次为:9、8、7、6、5,则趟置后依次为:5、6、7、8、9。
注意:部分源程序给出如下。
请勿改动函数main()与其他函数中的任何内容,仅在fun()函数的横线上填写所需的若干表达式或语句。
试题程序:
#include%stdi0.h>
void fun(int a[],int m)
{
int i,temp;
for(i=0;i
{
temp=a[i];
a[i]=a[m-1-【2】];
【3】=temp;
}
}
void main()
{
int x[9]=(9,8,7,6,5),i;
printf("\nThe original data:\n");
for(i=0:i<5:i++)
printf("%4d",x[i]);
printf("\n");
fun(x,5);
printf("\nThe data after invert:\n");
for(i=0;i<5;i++)
printf("%4d",x[i]);
printf("\n");
}
二、程序改错题
下列给定程序中,函数fun()的功能是:根据输入的i 条边长(整形),判断能否构成三角形;构成的是等边三角形,还是等腰三角形。若能构成等边三角形函数,返回3;若能构成等腰三角形函数,返回2;若构成三角形函数,返回1;若不能构成三角形函数返回0。
请修改函数fun()中的错误,得出正确的结果。
注意:不要改动main()函数,不能增行或减行,也不能更改程序的结构。
试题程序:
#include
int fun(int x,int y,int z)
{
if(x+y>z&&y斗_z>x&&x+z>y)
{
//****found****
if(x==y&&y==z)
return 1;
else if(x==y||y==z||x==z)
return 2;
else
//****found****
return 3;
}
else
return 0;
}
void main()
{
int x,y,z,shape;
printf("\nInput x,y,z:");
scanf("%d%d%d",&x,&y,&z);
printf("\nx=%d,y=%d,z=%d\n",x,y,z);
shape=fun(x,y,z);
printf("\n\nThe shape:%d\n",shape);
}
三、程序设计题
假定输入的字符串只包含字母和“#”号,请编写函数fun(),它的功能是:删除字符串中所有的“#”号。在编写函数时,不得使用C语言提供的字符串函数。
例如,若字符串中的内容为“##w#el##come## #”,删除后,字符串中的内容则应当是“welcome”。
请勿改动main()函数与其他函数中的任何内容,仅在函数fun()的花括号中填入所编写的若干语句。
试题程序:
#include
#include
#define strcpy
void fun(char*s)
{
}
void main()
{
char str[81];
FILE*out;
printf("Enter a string:\n");
gets(str);
fun(str);
printf("The string after deleted:\n");
puts(str);
out=fopen("outfile.dat","w");
strcpy(str,"###T#ES#T#######");
fun(str);
fprintf(out,"%s",str);
fclose(out);
}
上机考试试题答案与解析
一、程序填空题
【1】m/2【2】i【3】a[m—1—i]
【解析】该题中函数功能是逆置数组元素的值。此类题的解题思路,是在简单的两个数值交换的基础上,增加对数值定位的功能,也就是确定要交换的数值在数组中的位置。
第一空:对数组中的元素进行逆置,根据上面的分析,整个数组中元素交换的循环次数,应该是只需要.交换整个数组长度的一半的次数,所以,第一空应填:“m/2”。
第二空:元素逆置,就是第一个和最后一个交换,依次类推。个数为m的数组中.与第i个元素相对应需要交换的元素是第m-1-i个元素,所以第二空填:“i”。
第三空:根据两个元素交换的算法,第i个和第m-i-l 个元素交换的过程,应填:“a[m-1-i]”。
二、程序改错题
(1)错误:return 1;
正确:return 3;
(2)错误:return 3;
正确:return 1;
【解析】本题利用if语句判断三条边的关系,根据判断的结果,返回题干中要求的值。
(1)第一个标识下的语句“if(x==y&&y==z),,说明x,y,z三个值相等,即等边三角形,所以应该返回3,将“1”改成“3”。
(2)第二个标识下的else语句应该是除了等边及等腰三角形之外的三角形,所以应该返回1,应将“3”改成“1”。
三、程序设计题
int i=0;char*p=s; //工作指针P指向字符串s
while(*p) //当P不指向字符串尾符
{
if(*P!=’#’)//指针P指向的字符不是"#"
{
s[i]=*p;//将P指向的字符复制到字符串s
i++;//s下标加1
}
p++;//指针加1,指向下一个字符
}
s[i]=’\0 ’;//新串加尾符
【解析】在while循环中,利用if判断表达式中每一个字符是否为“#”,如果不是,将其复制到字符串,否则跳过,这就实现了函数的功能。
(1)首先利用工作指针指向字符串,当指针不指向串尾时,就对字符串进行循环判断。
(2)在循环中利用if判断表达式字符是否为“#”,如果不是,将其复制到字符串,否则跳过。
(3)所有字符处理完后,记得在新串s的末尾加上结束符“’\0’”。
回型数组 C语言上机题,2014年全国计算机等级二级C语言上机考前预测(含答案)6...相关推荐
- 求2014年九月国二c语言考试小抄,2014年全国计算机等级二级C语言上机考前预测(含答案)17...
一.程序填空题 请补充函数proc(char*str),该函数的功能是把字符串中的内容逆置. 例如,字符串中原有的字符串为abcdef9,则调用该函数后,串中的内容变为gfedcba. 注意:部分源程 ...
- 计算机二级c语言编程题型,全国计算机等级二级C语言上机编程题题型
第1题 函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70到79的人数存到b[1],成绩为80 ...
- 全国计算机等级二级C语言上机编程题题型
全国计算机等级二级C语言上机编程题题型 第1题 函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70 ...
- 计算机网络技术三级题库pdf,全国计算机等级考试三级网络技术上机考试题库.pdf...
全国计算机等级考试三级网络技术上机考试题库.pdf 1套 已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符 型4位).产品名称mc(字符型10位).单价dj(整型 ...
- c语言程序设计常用语句格式,全国计算机考试二级C语言程序设计要求
(一)C语言的结构 1.程序的构成,main函数和其他函数. 2.头文件.数据说明.函数的开始和结束标志. 3.源程序的书写格式. 4.C语言的风格. (二)数据类型及其运算 1.C的数据类型(基本类 ...
- c语言用户标识符不能描述常量,计算机等级二级C语言考试选择题库
计算机等级二级C语言考试选择题库 福建省高校计算机等级考试二级C语言选择题汇编 50201.下面关于C语言用户标识符的描述,正确的(D ). 50101.在C语言源程序中,以下叙述正确的是(C). A ...
- 用C语言编程计算下列表达式:s=1! 2...,2012年全国计算机等级二级C语言模拟试题及答案(3)...
一.单项选择题1. 设int x=1,y=1;表达式(!x++ || y--)的值是_________ A.0 B. 1 C. 2 D.-1 2.main( ) { int n; ( n=6*4,n ...
- c语言编译笛卡尔叶形线,全国计算机等级考试C语言2级笔试题-(25)2007年4月1
2007年4月全国等级考试题目 第25次(已经修改) 一.选择题 下列各题A).B).C).D)四个选项中,只有一个选项是正确的. (1-11题,软件技术基础单向选择题目) 1. 下列叙述中正确的是( ...
- 三级C语言上机考试试题与题解,全国计算机等级三级C语言上机试题逐题解析
三级网络技术和三级数据库技术的C语言上机试题难度较大,题型多样,因此颇难掌握,今将这些试题分类解析,希望能帮大家顺利通过上机考试. 三级的上机题可以分为十几个类型,每类中的题目数量不一,多则十几道题, ...
最新文章
- 《MyBatis技术原理与实战》之SqlSession的用途
- groovy怎样从sql语句中截取表名_《SQL基础教程》学习笔记
- java 微信支付 md5_微信支付MD5签名算法实现
- python wordpress自定义字段获取_WordPress 自定义字段(Custom Fields)详细介绍和使用...
- react开发模式_通过开发带有精灵动画的游戏来学习高级React模式
- [Leetcode][第75题][JAVA][颜色分类][双(三)指针][计数排序]
- linux一键安装node+npm
- 【ES9(2018)】Object Rest Spread
- 搞懂 CSS 水平居中与垂直居中的16个方法
- 20 世纪 70 年代的太空殖民艺术 1
- Linux查看某个进程的磁盘IO读写情况
- 二阶振荡环节的谐振频率_什么是谐振器?谐振器与振荡器有什么区别?
- 阿里巴巴Java开发手册详细版本
- java 轻量 mq_uncode-mq
- 万物互联之边缘计算岗位分析
- Pyton IO编程
- JUNIPER路由器中常用命令总结
- 论文研读1——对抗样本(Adversarial Example)综述(2018版)
- IT小盆友:注意20种习惯最耗元气
- pyinstaller 打包exe 防反编译(加密)
热门文章
- Redis 的持久化
- IOS开发之手势——UIGestureRecognizer 共存
- 支持IPsec / L2TP / EtherIP测试版下载
- SharePoint开发中怎样使用Visual Studio给你的Web Part加入图标
- 贪心+优先队列之更改优先级-hdu1896
- JZOJ 3461. 【NOIP2013模拟联考5】小麦亩产一千八(kela)
- 团队作业2——需求分析原型设计
- MySQL - ODBC安装错误问题!
- [原创]C#应用WindowsApi实现查找(FindWindowEx)文本框(TextBox、TextEdit)。
- dede首页调用会员积分和头像代码