C语言上机作业
C语言上机作业
北枫凉
The greatest gift you can give yourself is that of education.
展开
-
c0706 交叉引用生成器
【问题描述】“交叉引用生成器”是指具有如下功能的程序:对输入的一篇文档,统计出现的所有单词及其所在的行号。将其结果以规定的格式输出。【输入形式】程序从crossin.txt读入一篇文档。该文档由若干行组成,每行中包含一些列的单词。行号由1开始计数。该文档的单词量能不超过200,每个单词最大长度不超过20个字符。【输出形式】将输入文档中出现的单词及其所在行号输出到文件crossout.t...原创 2020-04-07 00:40:36 · 1336 阅读 · 0 评论 -
c0705 猴子选大王
【问题描述】要从n只猴子中选出一位大王。他们决定使用下面的方法:n只猴子围成一圈,从1到n顺序编号。从第q只猴子开始,从1到m报数,凡是报到m的猴子退出竞选,下一次又从退出的那只猴子的下一只开始就从1到m报数,直至剩下的最后一只为大王。请问最后哪只猴子被选为大王。【输入形式】控制台输入三个整数n,m,q【输出形式】输出最后选为大王的猴子编号【样例输入】 7 4 3【样例输出】4...原创 2020-04-05 18:12:49 · 647 阅读 · 0 评论 -
c0704 学生记录
【问题描述】从键盘中读入最多不超多50个学生的学生信息(包括空格隔开的姓名、学好、年龄信息,以学好从低到高排序)【输入形式】从键盘中读入最多不超多50个学生的学生信息;第一行为学生 的人数;后面每一行为空格隔开的学号,姓名,年龄,其中学号和年龄都是整数【输出形式】按姓名从低到高输出;按年龄从低到高输出,(年龄相同时,按照姓名从低到高输出)右对齐,占位符3、6、3【输入样例】4...原创 2020-04-04 21:31:45 · 2757 阅读 · 0 评论 -
c0703 链表操作
【问题描述】输入n(n>1)个整数,每次将输入的整数插入到链表头部。-1表示输入结束。再输入一个整数,在链表中查找该数据并删除对应的节点。要求输出惊醒删除操作后链表中所有节点的值。【输入形式】输入以空格分割的n个整数,以-1结束,在输入一个需要删除的数。【输出形式】从链表第一个元素开始,输出链表中所有节点的值。以空格分割。【样例输入】2 4 6 7 8 4 -1...原创 2020-04-04 20:26:29 · 5034 阅读 · 1 评论 -
c0702 统计整数
【问题描述】输入若干个整数,统计出现次数最多的那个整数。如果出现最多的整数有两个以上,打印最早输出的那个整数。【输入形式】第一行一个数字N(1<=N<=10000),代表整数的个数。以后的N行每行有一个整数。【输出形式】向标准输出打印出现次数最多的那个数字。【输入样例】6110-1200300【样例输出】0//2020/4/4#include<...原创 2020-04-04 16:26:43 · 1926 阅读 · 0 评论 -
c0701 计算日期差
【问题描述】结构struct Date{int year;int moth;int day;};利用该结构编写一个程序用来计算两个日期之间相差的天数。【输入形式】输入两个日期,每个日期分别占用一行,在一行中日期的年月日是三个整数,以空格分割。并假设第二个日期大于或等于第一个日期。【输出形式】第二个日期和第一个日期相差的天数【输入样例】2003 3 252003 3 29...原创 2020-04-04 15:50:50 · 849 阅读 · 0 评论 -
c0606 最长升序子串
自做答案//2020/4/1#include<stdio.h>#include<string.h>const int maxn = 10010;char str[10010];int dp[10010];int main(){ int i,j; int len; scanf("%s",str); len = strl...原创 2020-04-01 21:38:44 · 687 阅读 · 0 评论 -
c0605 超长正整数的加法
【问题描述】编写程序实现两个超长正整数(每个最长80位数字)的加法运算。【输入形式】从键盘读入两个整数,要考虑输入高位可能为0的情况(如00083)。第一行是超长正整数A;第二行是超长正整数B;【输出形式】输出只有一行,是两个长整数的运算结果,从高到低依次输出各位数字。各位数字紧密输出。算法提示:1.用字符串输入两个超长整数,分别存放在两个字符串中,每一位对应一个字符串中的字符...原创 2020-03-31 21:55:46 · 486 阅读 · 0 评论 -
c0604 旋转魔方阵
【问题描述】输入一个自然数N(2≤N≤9),要求输出如下的魔方阵,即边长为NN,元素取值为1至NN,1在左上角,呈顺时针方向依次放置各元素。N=3时:1 2 38 9 47 6 5【输入形式】从标准输入读取一个整数N。【输出形式】将结果输出到文件文件file.out。输出符合要求的方阵,每个数字占5个字符宽度,向右对齐,在每一行末均输出一个回车符。【输入样例】4【输出样例】...原创 2020-03-31 20:41:06 · 1932 阅读 · 0 评论 -
c0603 子串逆置
自做代码#include<stdio.h>#include<string.h>#include<algorithm>#include<set>using namespace std;char s[100];char t[100];int main(){ int i = 0,j = 0; FILE *in,*...原创 2020-03-31 16:56:13 · 547 阅读 · 0 评论 -
c0602字符串中字符排序
【问题描述】编写一个程序,从键盘接收一个字符串,然后按照字符顺序从小到大进行排序,并删除重复的字符。自做答案:不使用集合set#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;char str[1000];char ans[1000];int...原创 2020-03-31 15:12:08 · 346 阅读 · 0 评论 -
c0601矩阵运算
【问题描述】对于多个N阶矩阵,依次进行加、减运算。代码实现//2020/3/21#include<stdio.h>const int MAX = 20;int N;void input_matric(int B[MAX][MAX]){ int i,j; for(i = 0;i<N;i++) { for(j = 0;j...原创 2020-03-31 14:29:35 · 1200 阅读 · 0 评论 -
5-6 判断出栈序列
【问题描述】对于一个栈,已知元素的进栈序列,判断一个由栈中所有元素组成的排列是否是可能的出栈序列。比如,进栈序列为1 2 3 4,则可能的出栈序列有4 3 2 1,1 4 3 2等。而1 4 2 3就不是。【输入形式】从标准输入读取第一行是一个整数N(3≤N≤10),代表有N个元素,其进栈序列是1 2 3 …… N。第二行是空格分隔的1~N的数字的一个排列。【输出形式】向标准输出打印结果。...原创 2020-03-24 15:59:15 · 388 阅读 · 0 评论 -
5-5扩展字符
【问题描述】编写一函数expand(s1,s2),用以将字符串s1中的缩记符号在字符串s2中扩展为等价的完整字符,例如将a-d扩展为abcd。该函数可以处理大小写字母和数字,并可以处理a-b-c、a-z0-9与-az等类似的情况。在main函数中测试该函数:从键盘输入包含缩记符号的字符串,然后调用该函数进行扩展,输出扩展结果。(教材 P63:Exercise 3-3)注意:待扩展字符串中有可...原创 2020-03-24 15:07:30 · 592 阅读 · 0 评论 -
5-4 删数问题
【问题描述】输入一个高精度的大正整数S(S最长可达240位),去掉其中任意N位数字后剩下的数字按原次序组成一个新的正整数S’。编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数S’最小。【输入形式】输入有两行:1.第一行是大整数S。其中S最长可达240位。2.第二行是整数N。S、N均以非0数字开头。【输出形式】输出有一行,是在S中删除N位后所得的最小数字S’。【样例输入】17...原创 2020-03-23 22:35:49 · 2616 阅读 · 0 评论 -
5-3 凸多边形面积
【问题描述】给出平面上一组顶点的坐标,计算出它们所围成的凸多边形的面积。【输入形式】从标准输入读取顶点坐标。格式为:第一行是点的个数N(3≤N≤15),后面紧接着N行,每行两个数字 (由空格隔开),分别表示该点的X、Y坐标(0≤X,Y≤32767)。所有点的坐标互不相同,且按顺时针次序给出。输入数据确保该多边形是一个凸多边形。【输出形式】向标准输出打印一个浮点数,是该多边形的面积。该浮...原创 2020-03-23 21:25:44 · 4529 阅读 · 5 评论 -
8-3 单词排序
【问题描述】编写一个程序,从文件sort.in中读入单词(即:以空格分隔的字符串),并对单词进行排序,删除重复出现的单词,然后将结果输出到另一个文件sort.out中。【输入形式】输入文件名和输出文件名分别为sort.in和sort.out。输入文件的内容是用空格隔开的多个单词。【输出形式】对单词进行排序,删除重复出现的单词,然后将结果输出到文件sort.out中。【输入样例】假如s...原创 2020-03-23 20:33:34 · 1019 阅读 · 0 评论 -
8-2 括号匹配
【问题描述】假设一个输入字符串中包含圆括号、方括号和花括号三种类型的括号,以及其它一些任意字符.编写程序,判别串中的括号是否正确匹配,即:1.各种左、右括号的个数要一致;2.不能先出现右括号;【输入形式】从当前目录下correct.in文件中读入一行字符串.字符串最大长度80,不含空格.【输出形式】输出到当前目录下correct.out文件中.输出只有一个单词,如果括号匹配则输出“T...原创 2020-03-23 18:03:23 · 557 阅读 · 0 评论 -
8-1 文件拷贝
【问题描述】写一程序将一个文件fcopy.in拷贝至另一个文件fcopy.out, 其中在所拷贝的文件中, 多个连续空白符(包括空格符、制表符)只拷贝一个空格符, 其它字符不变。【输入形式】源文件名和目标文件名分别为fcopy.in和fcopy.out,程序将从当前目录下读取fcopy.in文件。【输出形式】将fcopy.in文件内容拷贝至当前目录下的fcopy.out文件中。在所拷贝的...原创 2020-03-23 17:12:59 · 4473 阅读 · 1 评论 -
5-2 整数的N进制字符串表示
【问题描述】编写函数atob(n,s,b),用于把整数n转换成以b为基的字符串并存储到s中. 编写程序,使用函数itob(n,s,b)将输入的整数n,转换成字符串s,将s输出.转换后的字符串从最高的非零位开始输出。如果n为负数,则输出的字符串的第一个字符为’-’。b为大于1小于37的任意自然数值。当b=2时,输出字符只可能是’0’和’1’;当b=16时,输出字符串中可能含有字符为’0’-’9’,’...原创 2020-03-20 16:15:17 · 789 阅读 · 2 评论 -
5-1 求差集
【问题描述】两个集合的差集定义如下:集合A、B的差集,由所有属于A但不属于B的元素构成。输入两个集合A、B,每个集合中元素都是自然数。求集合A、B的差集。【输入形式】从标准输入接收集合中的自然数元素,以空格分隔。-1表示输入结束。其中,每个集合都不输入重复的元素。【输出形式】输出差运算后集合中的元素,以空格分隔。输出元素的顺序与原有集合A输入的顺序一致。如果A、B的差集为空集,则不...原创 2020-03-20 15:52:47 · 1073 阅读 · 0 评论