全国计算机等级考试题库二级C操作题100套(第09套)

第09套:
给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排序后链表结点数据域从头至尾的数据为:2、4、6、8、10。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:

#include <stdio.h> 
#include <stdlib.h> 
#define N 6 
typedef struct node { 
int data; 
struct node *next; 
} NODE; 
void fun(NODE *h) 
{ NODE *p, *q; int t; 
p = h; 
while (p) { 
q = __1__ ; 
while (__2__) 
{ if (p->data > q->data) 
{ t = p->data; p->data = q->data; q->data = t; } 
q = q->next; 
} 
p = __3__ ; 
} 
} 
NODE *creatlist(int a[]) 
{ NODE *h,*p,*q; int i; 
h=NULL; 
for(i=0; i<N; i++) 
{ q=(NODE *)malloc(sizeof(NODE)); 
q->data=a[i]; 
q->next = NULL; 
if (h == NULL) h = p = q; 
else { p->next = q; p = q; } 
} 
return h; 
} 
void outlist(NODE *h) 
{ NODE *p; 
p=h; 
if (p==NULL) printf("The list is NULL!\n"); 
else 
{ printf("\nHead "); 
do 
{ printf("->%d", p->data); p=p->next; } 
while(p!=NULL); 
printf("->End\n"); 
} 
} 
main() 
{ NODE *head; 
int a[N]= {0, 10, 4, 2, 8, 6 }; 
head=creatlist(a); 
printf("\nThe original list:\n"); 
outlist(head); 
fun(head); 
printf("\nThe list after inverting :\n"); 
outlist(head); 
} 

解题思路:
本题是考察使用链表方法,使用两重while循环语句,对链表的结点数据进行升序排列。
第一处:由于外循环变量使用p指针,内循环变量使用q指针,所以q指向必须指向p的next
指针,因此应填写:p.next。
第二处:判断内循环q指针是否结束,所以应填:q。
第三处:外循环控制变量p指向自己的next指针,所以应填:p.next。


给定程序MODI1.C中函数fun的功能是: 将s所指字符串中的字母转换为按字母
序列的后续字母(但Z转换为A, z转换为a),其它字符不变。
请改正函数fun中指定部位的错误, 使它能得出正确的结果。
注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!
给定源程序:

#include <stdio.h> 
#include <ctype.h> 
void fun (char *s) 
{ 
while(*s!='@') 
{ if(*s>='A' & *s<='Z' || *s>='a' && *s<='z') 
{ if(*s=='Z') *s='A'; 
else if(*s=='z') *s='a'; 
else *s += 1; 
} 
(*s)++; 
} 
} 
main() 
{ char s[80]; 
printf("\n Enter a string with length < 80. :\n\n "); gets(s); 
printf("\n The string : \n\n "); puts(s); 
fun ( s ); 
printf ("\n\n The Cords :\n\n "); puts(s); 
} 

解题思路:
第一处: 使用while循环来判断字符串指针s是否结束,所以应改为:while(*s)。
第二处: 取字符串指针s的下一个位置,所以应改为:s++;。


请编写函数fun, 函数的功能是: 移动一维数组中的内容; 若数组中有n个整数, 要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。
例如, 一维数组中的原始内容为: 1,2,3,4,5,6,7,8,9,10; p的值为3。移动
后, 一维数组中的内容应为: 5,6,7,8,9,10,1,2,3,4。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:

#include <stdio.h> 
#define N 80 
void fun(int *w, int p, int n) 
{ 
} 
main() 
{ int a[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; 
int i,p,n=15; 
printf("The original data:\n"); 
for(i=0; i<n; i++)printf("%3d",a[i]); 
printf("\n\nEnter p: ");scanf("%d",&p); 
fun(a,p,n); 
printf("\nThe data after moving:\n"); 
for(i=0; i<n; i++)printf("%3d",a[i]); 
printf("\n\n"); 
NONO(); 
} 
解题思路: 
本题是考察一维数组的操作。 
1. 定义一维数组中间变量b,把n值后面数组中的内容存入b中。 
2. 再把m前的数组中的内容存入b中。 
3. 最后把数组b的内容依次存放到w中。 
参考答案: 
void fun(int *w, int p, int n) 
{ 
int i, j = 0, b[N] ; 
for(i = p + 1 ; i < n ; i++) b[j++] = w[i] ; 
for(i = 0 ; i <= p ; i++) b[j++] = w[i] ; 
for(i = 0 ; i < n ; i++) w[i]= b[i] ; 
} 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266600.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于交换芯片的五元组的PCL规则过滤功能

2019独角兽企业重金招聘Python工程师标准>>> 基于交换芯片的五元组的PCL规则过滤功能作者: 韩大卫吉林师范大学2012.12.10Not Approved by Document Control Review Copy Only基于Marvell 98DX51xx/81xx交换芯片的五元组等的策略规则(PCL)过滤功能.现将部分的功能的…

python生成树状图_python 生成 树状结构

forwarding_recp re.compile(".*?发件人:(.*?);.*?发送时间:.*?收件人:(.*?)主题", re.S)def parse_addr(addr, split_str,): l[]ifaddr:for a inaddr.split(split_str): l.append(utils.parseaddr(a)[1])returnldef gen_forwarding(con): #参数是解析过后的邮…

remove()与empty()的区别

1、empty() - 从被选元素中删除子元素&#xff1b; 2、remove() - 删除被选元素(及其子元素)&#xff1b; 3、remove() 方法也可接受一个参数&#xff0c;允许您对被删元素进行过滤。转载于:https://www.cnblogs.com/hwldyz/p/9335717.html

2013年6月和12月CISA考试报名,认证,CPE维持和备考要点

2013年6月和12月CISA考试报名,认证,CPE维持和备考要点 2013年6月和12月CISA考试报名,认证,CPE维持和备考要点 消息来源&#xff1a;http://www.isaca.org/CERTIFICATION/CISA-CERTIFIED-INFORMATION-SYSTEMS-AUDITOR/REGISTER-FOR-THE-EXAM/Pages/default.aspx在线报名费用 早…

全国计算机等级考试题库二级C操作题100套(第10套)

第10套&#xff1a; 给定程序中&#xff0c;函数fun的功能是&#xff1a;判定形参a所指的NN&#xff08;规定N为奇数&#xff09;的矩阵是否是"幻方"&#xff0c;若是&#xff0c;函数返回值为1&#xff1b; 不是&#xff0c;函数返回值为0。“幻方"的判定条件是…

mysql字节对齐_结构体字节对齐(转)

结构体字节对齐在用sizeof运算符求算某结构体所占空间时&#xff0c;并不是简单地将结构体中所有元素各自占的空间相加&#xff0c;这里涉及到内存字节对齐的问题。从理论上讲&#xff0c;对于任何变量的访问都可以从任何地址开始访问&#xff0c;但是事实上不是如此&#xff0…

python docx 合并文档 图片_不再为处理PDF烦恼,python处理操作PDF全攻略

本篇聊下Python对pdf的各种操作&#xff0c;包含pdf转word&#xff0c;pdf转图片&#xff0c;pdf翻转&#xff0c;加密&#xff0c;加水印等。pdf转换word文档 保留格式pdf转换为word文档&#xff0c;被大众经常使用的是纯Python库pdfminer和python-docx搭配使用&#xff0c;不…

new blog

new blog转载于:https://www.cnblogs.com/uuzlove/p/9336405.html

windows server 2012 初安装体验

昨天晚上的windows server 2012 已时行 了发布了&#xff0c;为之在之前我已进行了下载测试安装&#xff0c;本来晚间想用来在虚拟机下进行安装VM-tool工具的&#xff0c;但是却因种种原因没有成功&#xff0c;为之补一下前面没有安装的过程截图。 进入下载页后&#xff0c;下载…

python 多进程 调用模块内函数_python子进程模块subprocess详解与应用实例 之一

分类&#xff1a; Python/Ruby 2014-09-09 10:59:42 subprocess--子进程管理器 一、subprocess 模块简介 subprocess最早是在2.4版本中引入的。 subprocess模块用来生成子进程&#xff0c;并可以通过管道连接它们的输入/输出/错误&#xff0c;以及获得它们的返回值。 它用来代替…

安卓APP_ 控件(1)—— TextView

摘自&#xff1a;安卓APP_ 控件&#xff08;1&#xff09;—— TextView 作者&#xff1a;丶PURSUING 发布时间&#xff1a; 2021-03-28 21:53:49 网址&#xff1a;https://blog.csdn.net/weixin_44742824/article/details/115283233 本文为学习笔记&#xff0c;是安卓APP学习的…

python udp 大文件_Python:通过UDP发送大对象

我是套接字编程的新手&#xff0c;最近为它挑选了Python。我有几个问题&#xff0c;我似乎无法找到明确的答案。Python&#xff1a;通过UDP发送大对象我正在研究通过UDP发送数据&#xff0c;并写了一个简单的python脚本来做到这一点。可以很好地发送小对象(准确地说是小腌制对象…

Flask入门系列(转载)

一、入门系列&#xff1a; Flask入门系列(一)–Hello World 项目开发中&#xff0c;经常要写一些小系统来辅助&#xff0c;比如监控系统&#xff0c;配置系统等等。用传统的Java写&#xff0c;太笨重了&#xff0c;连PHP都嫌麻烦。一直在寻找一个轻量级的后台框架&#xff0c;学…

iphone3G恢复到3.1.2遇到的问题

1.报错1015 2.进入DFU模式&#xff0c;刷到下载数据停止不动。 3.进入菠萝&#xff0c;进度条走到最后停止不动。 4.红雪走到waiting for reboot停止不动。 针对上述问题&#xff1a; 首先&#xff0c;要找到完全对应手机系统原版本的固件。然后&#xff0c;红雪进入DFU模式刷机…

用python做数据分析pdf_利用python进行数据分析pdf

利用python进行数据分析pdf微盘下载&#xff01;《利用python进行数据分析》利用Python实现数据密集型应用由浅入深帮助读者解决数据分析问题~适合刚刚接触Python的分析人员以及刚刚接触科学计算的Python程序员。利用python进行数据分析简介&#xff1a; 还在苦苦寻觅用Python控…

安卓APP_ 控件(2)—— Button

摘自&#xff1a;安卓APP_ 控件&#xff08;2&#xff09;—— Button 作者&#xff1a;丶PURSUING 发布时间&#xff1a; 2021-03-29 14:20:54 网址&#xff1a;https://blog.csdn.net/weixin_44742824/article/details/115290501 开篇&#xff1a;安卓APP_ 控件&#xff08;1…

python 列表自定义排序_自定义排序的Python列表

我有一个dicts列表: ldicts = [{name: 120-150}, {name: 90-120}, {name: 150-180}, {name: >= 180}, {name: <90}, {name: total}] 我想按值升序对其进行排序,以便输出如下: sortedldicts = [{name: total}, {name: <90}, {name: 90-120},{name: 120-150}, {name: …

HTML DOM知识点补充:

DOM Console 控制台对象提供了浏览器的debug的方法支持。 常用的&#xff1a;console.log()。 ⚠️coffeescript中&#xff0c;这个方法不加括号。 DOM Document 当一个HTML document加载到浏览器上&#xff0c;它就成为了一个document object。 它是root node 提供了大量docum…

python汇率编程_【菜鸟学Python】案例一:汇率换算

汇率换算V1.0 案例描述&#xff1a; 设计一个汇率换算器程序&#xff0c;其功能是将外币换算成人民币&#xff0c;或者相反 案例分析&#xff1a; 分析问题&#xff1a;分析问题的计算部分&#xff1b; 确定问题&#xff1a;将问题划分为输入、处理及输出部分&#xff1b; 设计…

2013年全球最佳工作

&#xfeff;&#xfeff;2013年即将到来&#xff0c;在新的一年中软件开发人士将继续保持良好的发展态势&#xff0c;通过信息技术及分析业务为企业带来竞争优势。系统分析师、网络/系统管理员、网络架构师以及数据库管理员也纷纷名列榜单前十五位。硅谷与华盛顿特区地铁体系则…