没有合适的资源?快使用搜索试试~ 我知道了~
首页****C语言竞赛题目大全*****
资源详情
资源推荐
1.(选排列)下面程序的功能是利用递归方法生成从 1 到 n(n<10)的 n 个数中取 k(1<=k<=n)个数的全
部可能的排列(不一定按升序输出)。例如,当 n=3,k=2 时,应该输出(每行输出 5 个排列):
12 13 2123 32 31
程序:
#include <stdio.h>
int n,k,a[10];
long count=0;
void perm2(int j)
{int i,p,t;
if( j==k )
{for(i=k;i<=n;i++)
{count++;
t=a[k]; a[k]=a; a=t;
for(p=1;p<=k;p++ )
printf("%1d",a[p]); /* "%1d"
中是数字
1
,不是字母
l */
printf("");
t=a[k];a[k]=a;a=t;
if(count%5==0) printf("");
}
return;
}
for(i=j;i<=n;i++)
{t=a[j];a[j]=a;a=t;
perm2(j+1);
t=a[j]; a[j]=a;a=t ;
}
}
main()
{int i;
printf("Entry n,k (k<=n):");
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)a=i;
perm2(1);
}
第1题 寄存器操作
问题:
假设在一个 位的机器上,需要将某个外设寄存器的第 位最低位为第 位,最高位为第
位设置成 ,将第 位开始的连续三位设置成 (从高位到低位的顺序),而其它位保持不变。对
给定的寄存器值 ,及 ,,编程计算更改后的寄存器值 。
输入的数据仅一行,包括 ,以逗号分隔, 为 进制表示的 位整数, 在
之间且 ,的绝对值,保证两次置位不会重合更改后的寄存器值 ( 进制输出)。
例如:
Sample Input
输出:
解题思路:
很简单的位操作,但是需要注意的是 那里是 不能直接或上 ,而是先两次 ,在
。
答案:
!"#$%&'!!!!!
( !)!*!!!!)!+!,-!""!*!!!!..-!表示 位无符号数,将 ) 的 * 位清零。
( !)!/!!!!)!0!!-!""!/!!..表示将 ) 的 / 位置零
$!12!!!
3!!!
!!!!$!)!*!/4!!!
!!!!!#256*66!+)!+*!+/4!!!
!!!
!!!!!)*4!!!..清除 * 位
!!!!!)/4!!!..置位 / 位
!!!!!)/4!..置位 / 位
!!!!!)/4!!..置位 / 位
!!!
!!!!!7)$56*!)4!!!
!!!!) $)!4!!!
8
第2题 破译密码
问题:
据说最早的密码来自于罗马的凯撒大帝。消息加密的办法是:对消息原文中的每个字母,分别用
该字母之后的第 个字母替换(例如:消息原文中的每个字母 9 都分别替换成字母 :)。而你要获得
消息原文,也就是要将这个过程反过来。
密码字母:9!;!!<!!:!=!>!?!@!A!!B!C!D!E!F!!!!-!G!H!!!I!B!
原文字母:G!H!!!I!9!;!!<!!:!=!>!?!@!A!!B!C!D!E!F!!!!-!
注意:只有字母会发生替换,其他非字母的字符不变,并且消息原文的所有字母都是大写的。
输入:
最多不超过 个数据集组成,每个数据集之间不会有空行,每个数据集由 部分组成J!
& 起始行:9!
& 密码消息:由 到 个字符组成一行,表示凯撒发出的一条消息&!
& 结束行:C<!
在最后一个数据集之后,是另一行:C<D:?CE-。
输出:
每个数据集对应一行,是凯撒的原始消息。
Sample Input
9
C!;:H!@9@!A!C-H:>@!:H@!B@!H@IF!A!HC9C:F!>:I@
C<
9
C!;IF?!H:B@H!=@!ACH!C!:!FCF@!C=@HC:!9CFF:@!B:!@>?!C!H@
C<
9
?:@H!E;!AIFF!;@FF!B:!>:@:H!C!H@!?:@HI!B:!B@
C<
C<D:?CE-
Sample Output
?C!H9!GC!D:!?BED9C!9!>!-!D:!?G?9!9-
?!HD-<!9>!;!:?!?C!9!?!?;?9C!G?9=!>9C!DC<!?C!DB
<9C=!ACDH!:-!H!>9!99!?!BD!<9C=D-!>9C!>
解题思路
凯撒编码,判断字符是否是字母,并循环 即可,记得要循环哦,非常简单的题目哦
答案:
!"#$%&'!!!
!"#$)K&'!!!
!"$/7 &'!!!
( !C!!!!
!!!
'2)!#$)LCM384!
!!!
$!12!!!
3!!!
!!!!'2)!N74!!!
!!!
!!!!!K $##$)4!!!
!!!!O' !#$)17#$)!C<D:?CE-!P!!!!!..当没遇到消息集的结尾时
!!!!3!
!!!!!!!!5!!#$)17#$)!9!P!!!!!!..当消息不是开始
!!!!!!!!!!!!!++#$)17#$)!C<!P!!!!!..消息不是结尾
!!!!!!!!!3
!!!!!!!!!!!!5%)7#$)4!N7!PQRQ4!7SS!!!!!!..对输入的串进行解密
!!!!!!!!!!!!!3!!!
!!!!!!!!!!!!!!!!5!#77 )N7!!!! ..判断是否为大写字符
!!!!!!!!!!!!!!!!!!!!!N7!S!N7!"Q9Q!T!J!4!!!..进行转换,考虑边界问题!
!!!!!!!!!!!!!8!!!
!!!!!!!!!!!!!7$##$)4!!! ..输出字符
!!!!!!!!!8!!!
!!!!!!!!!K $##$)4!!! ..接受下一行
!!!!!8!
!!!!) $)!4!!!
8!
第3题 小孩报数问题
有 C 个小孩围成一圈,给他们从 开始依次编号,现指定从第 H 个开始报数,报到第 个时,
该小孩出列,然后从下一个小孩开始报数,仍是报到 个出列,如此重复下去,直到所有的小孩都出
列(总人数不足 个时将循环报数),求小孩出列的顺序。或者是求最后出圈人的编号等等类似问题。
输入:第一行输入小孩的人数 C(C"),接下来每行输入一个小孩的名字人名不超过 个
字符!最后一行输入 H!H!"!C,用逗号间隔
输出:按人名输出小孩按顺序出列的顺序,每行输出一个人名
Sample Input
2%1K
2%'2
2%O2K
I'2K#2
#
Sample Output
I'2K#2
2%'2
2%1K
2%O2K
#
解题思路:(暂空)
第4题 方阵填数
答案:
!"%#$) 21
#K!21 #72 !#$4
$!2LMLM4
U%!:$!
3
$!1!!V4
5%)!!4!!"!.4!SS
3
5%)V!!4!V!"!4!VSS
3
52LMLVM!!
2LMLVM!!1SS4
8
5%)V!!S4!V!"!4!VSS
3
52LVMLM!!
2LVMLM!!1SS4
8
5%)V!!4!V!!4!V
3
52LMLVM!!
2LMLVM!!1SS4
8
5%)V!!4!V!!4!V
3
52LVMLM!!
2LVMLM!!1SS4
8
8
56
2L.ML.M!!14
8
U%!12
3
$!!!V4
4
5%)$!!!4!!"!4!SS
3
5%)$!V!!4!V!"!4!VSS
2LMLVM!!4
8
:4
5%)!!4!!"!4!SS
3
5%)$!V!!4!V!"!4!VSS
3
%$!""!2LMLVM!""!!4
8
%$!"" 4
8
8
第5题 第五套
& 编写一个程序,让它有以下功能:从键盘上输入一个五位数,对此整数中的五个数值进行从大到
小排序,形成一个新的五位数,输出这个整数。
& 输入年、月、日,输出该日期是该年的第几天。
& 将学生的学号和成绩存储在数组中,利用循环计算出数组中存储学生的平均成绩,找出高于平均
分的学生信息并输出。
& 输入五个国家的名字,按字母顺序即按 9?? 码从小到大的顺序排列输出。
& 用指针实现:任意输入 个数,将它们按照从大到小的顺序输出。
& 编写一个简单的通讯录管理系统。通讯录包括:姓名、通讯地址、邮编、联系电话,现编写一个
剩余63页未读,继续阅读
taohe222
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功