程序设计题目
一些程序设计题目
热爱学习的小羽呀
这个作者很懒,什么都没留下…
展开
-
TeX中的引号~C语言
在Tex中,做双引号的" `` ",右双引号是" '' ".输入一篇包含双引号的文章,你的任务是把它转换成TeX的格式。样例输入: "To be or not to be,"quoth the Bard,"that is the question".样例输出: ``To be or ...原创 2018-07-18 17:27:05 · 548 阅读 · 0 评论 -
大理石在哪~c++
大理石在哪儿现有N个大理石,每个大理石上写了一个非负整数、首先把各数从小到大排序然后回答Q个问题。每个问题问是否有一个大理石写着某个整数x,如果是,还要回答哪个大理石上写着x。排序后的大理石从左到右编号为1~N。输入4 12 3 5 155 21 3 3 3 12 3 样例输出:CASE# 1:5 found at 4CASE# 2:2 not fou...原创 2018-07-27 21:25:12 · 744 阅读 · 0 评论 -
后缀表达式的求值(c语言)
题目描述为了便于处理表达式,常常将普通表达式(称为中缀表示)转换为后缀{运算符在后,如X/Y写为XY/表达式。在这样的表示中可以不用括号即可确定求值的顺序,如:(P+Q)*(R-S) → PQ+RS-*。后缀表达式的处理过程如下:扫描后缀表达式,凡遇操作数则将之压进堆栈,遇运算符则从堆栈中弹出两个操作数进行该运算,将运算结果压栈,然后继续扫描,直到后缀表达式被扫描完毕为止,此时栈底元素即为该后缀表...原创 2018-06-29 19:50:59 · 15655 阅读 · 7 评论 -
中缀表达式转后缀表达式(c语言)
中缀表达式是一个通用的算术或逻辑公式表示方法, 操作符是以中缀形式处于操作数的中间,是人们常用的算术表示方法。后缀表达式指的是不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则)。1、遇到操作数,直接输出。2、如果不是操作数,分为以下几种情况(1)如果操作符栈为空,则入栈。(2)如果栈非空,且当前操作符优先级大于栈顶操作符,则入栈;如...原创 2018-06-29 19:32:43 · 8820 阅读 · 2 评论 -
最小生成元~c语言
问题描述:如果x加上x的各个数字之和得到y,就说x是y的生成元。给出y(1≤y≤100000),求最小生成元,如果无解则输出0。例如,y=216,121,2005时的解分别为198,0,1979。此题存在数据之间的对应关系,因此可以用数组来存储。题目要求输入y输出x,那么先将所有的y算出来作为数组的下标使用,并且每一个下标y对应一个数组值x。#include<stdio.h&...原创 2018-07-19 16:57:29 · 1382 阅读 · 4 评论 -
猜数字游戏的提示~c语言
题目:给定答案序列和用户猜的序列,统计有多少数字位置正确(A),有多少数字在两个序列都出现过但位置不对(B)。输入包含多组数据,每组输入第一行为序列长度n,第二行是答案序列,接下来是若干猜测序列。猜测序列全0时该组数据结束。n=0时输入结束。样例输入:41 3 5 51 1 2 34 3 3 56 5 5 16 1 3 51 3 5 50 0 0 0101 2 2 2...原创 2018-07-19 18:12:12 · 686 阅读 · 0 评论 -
数数字~c语言
题目:把n(n<=10000)个整数顺次写在一起:123456789101112~~~数一数0~9各出现了多少次(输出10个整数,分别是0,1,2,3,~,9出现的次数。) #include<stdio.h>#include<string.h>char s[10010];int main(){ int a[10]; int j; ...原创 2018-07-19 18:36:16 · 1094 阅读 · 0 评论 -
蛇形填数~c语言
在做此题之前我们需要明白的原则:先判断,在移动,而不是走一步以后发现越界再退回来,所以就需要预判,即是否越界,以及如果继续往下走会不会到达一个已经填过得格子。在很多情况下,最好是在做一件事之前检查是不是可以做,而不是做完再后悔。因为‘后悔’比较麻烦。#include<stdio.h>#include<string.h>int main(){ int n,a[20][2...原创 2018-07-14 22:50:18 · 1152 阅读 · 0 评论 -
谜题~c语言
有一个5*5的网格,其中恰好有一个格子是空的,其他格子各有一个字母。一共有4种指令:A, B, L, R,分别表示把空格上、下、左、右的相邻字母移到空格中。输入初始网格和指令序列(以数字0结束),输出指令执行完毕后的网格。如果有非法指令,应输出“This puzzle has no final configuration.” 例如,图3-5中执行ARRBBL0后,效果如图所示。 #...原创 2018-07-21 22:10:31 · 535 阅读 · 0 评论 -
回文词~C语言
题目描述:输入一个字符串,判断它是否为回文以及镜像串。输入字符串保证不含数字0.所谓回文串,就是反转之后原串相同,如abba和madam。所谓镜像串,就是左右镜像之后和原串相同,如2S和3AIAE。注意,并不是每个字符在镜像之后都能得到一个合法字符,本题中,每个字符的镜像如下所示,(空白项表示该字符镜像后不能得到一个合法的字符)。Character Reverse Charac...原创 2018-07-19 15:39:12 · 1801 阅读 · 0 评论 -
WERTYU~C语言
问题:把手放在键盘上时,稍不注意就会往右错一位。这样,输入Q会变成输入W,输入J会变成输入K等。输入一个错位后敲出的字符串(所有字母均大写),输出打字员本来想打出的句子。输入保证合法,即一定是错位之后的字符串。例如输入中不会出现大写字母A。样例输入:O S, GOMR YPFSU/样例输出:I AM FINE TODAY. #include<stdio.h>#i...原创 2018-07-19 14:57:33 · 663 阅读 · 0 评论 -
线性表~顺序结构(数组)
#include<stdio.h>#define Maxsize 1024typedef struct{ int data[Maxsize]; int last;} sqlist,*list;void creatList(list L) //创建链表{ int x,i=0; printf("请输入第%d个元素:",i+1); ...原创 2018-06-16 14:10:16 · 214 阅读 · 0 评论 -
竖式问题~c语言
#include<stdio.h>#include<string.h>int main(){ int i,j,count=0; int x,y,z; char s[20],buf[99]; scanf("%s",s); for(i=111;i<=999;i++) for(j=11;j<=99;j++)...原创 2018-07-17 11:08:07 · 698 阅读 · 0 评论 -
分子量~C语言
#include<stdio.h>#include<string.h>int main(){ int T; scanf("%d",&T); while(T--) { char s[20]; int temp; double sum=0.0; scanf("%s",s); for(int i...原创 2018-07-17 12:20:54 · 1988 阅读 · 0 评论 -
环状序列~C语言
长度为n的环状串有n种表示法,分别为某个位置开始顺时针得到。例如,图中的环状串有10种表示:CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等。在这些表示法中,字典序最小的称为“最小表示”。输入一个长度为n(n<=100)的环状DNA串(只包含A、C、G、T这4种字符)的一种表示法,你的任务是输出该环状串的最小表示。例如,CTCC的最小表示是CCCT,CGAGTCAGC...原创 2018-07-17 23:48:40 · 1738 阅读 · 1 评论 -
周期串~c语言
题目:如果一个字符串可以由某个长度为k的字符串重复多次得到,就说该串以k为周期。如"abcabcabcabc"以3为周期。输入一个长度不超过80的串,输出它的最小周期。#include<stdio.h>#include<string.h>int main(){ int i,j,k,flag,T; char s[90]; scanf("%s"...原创 2018-07-18 16:54:41 · 1189 阅读 · 1 评论 -
直接插入排序~c语言
#include<stdio.h>int main(){ int s[20]; int n,i,j,key,f=1; scanf("%d",&n); for(i=0; i<n; i++) { scanf("%d",&s[i]); } for(i=0; i<n; i++) {...原创 2018-07-24 14:25:59 · 238 阅读 · 0 评论 -
排列~C语言
题目:用1,2,3,…,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3。按照“abc def ghi”的格式输出所有解,每行一个解.对数组的理解:1 数组可以用来存数。2 数组可以用来做标记,而标记的对象则是下标。3 如果数据之间存在某种对应关系也可用数组,相当于y对于x的函数,y代表数组的 值,x代表数组的下...原创 2018-07-19 09:54:19 · 303 阅读 · 0 评论 -
浅谈~数组
对数组的理解:1 数组最基本的作用就是用来存数。2 数组可以用做标记,而标记的对象则是下标。3 如果数据之间存在某种对应关系也可用数组,相当于y对于x的函数,y代表数组的 值,x代表数组的下标。4 不用一昧的看到字符串就使用数组一次性存储,有时候边读边执行效果更好。...原创 2018-07-19 10:09:14 · 255 阅读 · 0 评论 -
函数与数组~基础知识
不带下标的数组名代表一批变量,它存放的是数组的首地址(数组首元素的地址)。直接用参数名做参数时,传送的时地址值,地址传递后实参数组、形参数组地址相同,共享相同的内存单元,可以说就是同一个数组,只是生存期和作用域不同而已。c编译系统对形参数组的大小不作检查,形参数组在后跟一括号即可,其大小由相应的实参数组决定。注意: 形参数组并不会重新申请分配空间,而是与实参数组公用存储单元。 ...原创 2018-06-14 08:31:13 · 980 阅读 · 0 评论