
C语言
文章平均质量分 70
知乐之鱼
这个作者很懒,什么都没留下…
展开
-
把字符串内的字母转换成该字母的下一个字母
给定一个字符串,把字符串内的字母转换成该字母的下一个字母,a换成b,z换成a,Z换成A,如aBf转换成bCg,字符串内的其他字符不改变,给定函数,编写函数void Stringchang(const char*input,char*output)其中input是输入字符串,output是输出字符串原创 2014-04-13 21:43:46 · 6910 阅读 · 0 评论 -
图的创建
【注】参考《妙趣横生的算法》实现原创 2014-05-11 23:11:32 · 551 阅读 · 0 评论 -
删除字符串中所有给定的子串,返回删除的子字符串的个数
删除字符串中所有给定的子串问题描述:在给定字符串中查找所有特定子串并删除,如果没有找到相应子串,则不作任何操作。要求实现函数:int delete_sub_str(const char *str, const char *sub_str, char *result_str)【输入】 str:输入的被操作字符串 sub_str:需要查找并删除的特定子原创 2014-04-11 20:05:47 · 604 阅读 · 0 评论 -
操作系统对系统任务和用户任务调度问题
/**操作系统任务调度问题。操作系统任务分为系统任务和用户任务两种。其中,系统任务的优先级 = 50且 <= 255。优先级大于255的为非法任务,应予以剔除。现有一任务队列task[],长度为n,task中的元素值表示任务的优先级,数值越小,优先级越高。函数scheduler实现如下功能,将task[] 中的任务按照系统任务用户任务依次存放到 system_task[]数组和 user原创 2014-04-11 12:56:31 · 1072 阅读 · 0 评论 -
将数组中最大的元素放到数组最中间的位置,然后依次由大到小轮换放到左右两边
/**2. 给定一个数组input[] ,如果数组长度n为奇数,则将数组中最大的元素放到 output[] 数组最中间的位置,如果数组长度n为偶数,则将数组中最大的元素放到 output[] 数组中间两个位置偏右的那个位置上,然后再按从大到小的顺序,依次在第一个位置的两边,按照一左一右的顺序,依次存放剩下的数。例如:input[] = {3, 6, 1, 9, 7} output[] = {原创 2014-04-10 22:17:50 · 1649 阅读 · 0 评论 -
选秀节目打分,分为专家评委和大众评委
/**1.选秀节目打分,分为专家评委和大众评委,score[] 数组里面存储每个评委打的分数,judge_type[] 里存储与 score[] 数组对应的评委类别,judge_type[i] == 1,表示专家评委,judge_type[i] == 2,表示大众评委,n表示评委总数。打分规则如下:专家评委和大众评委的分数先分别取一个平均分(平均分取整),然后,总分 = 专家评委平均分原创 2014-04-10 22:13:02 · 4445 阅读 · 0 评论 -
使用递归解决一种约瑟夫问题
约瑟夫问题问题描述: 输入一个由随机数组成的数列(数列中每个数均是大于0的整数,长度已知),和初始计数值m。从数列首位置开始计数,计数到m后,将数列该位置数值替换计数值m,并将数列该位置数值出列,然后从下一位置从新开始计数,直到数列所有数值出列为止。如果计数到达数列尾段,则返回数列首位置继续计数。请编程实现上述计数过程,同时输出数值出列的顺序 比如: 输入的随机数列为:3,1,2,4,初始计原创 2014-04-12 15:06:53 · 696 阅读 · 0 评论 -
手机号码合法性判断
问题描述:我国大陆运营商的手机号码标准格式为:国家码+手机号码,例如:8613912345678。特点如下:1、长度13 位;2、以86 的国家码打头;3、手机号码的每一位都是数字。请实现手机号码合法性判断的函数(注:考生无需关注手机号码的真实性,也就是说诸如86123123456789 这样的手机号码,我们也认为是合法的),要求:1) 如果手机号码合法,返回0;原创 2014-04-13 09:24:36 · 815 阅读 · 0 评论 -
将一个字符串的元音字母复制到另一个字符串,并排序,让小写在前,大写在后,分别有序
问题描述:有一字符串,里面可能包含英文字母(大写、小写)、数字、特殊字符,现在需要实现一函数,将此字符串中的元音字母挑选出来,存入另一个字符串中,并对字符串中的字母进行从小到大的排序(小写的元音字母在前,大写的元音字母在后,依次有序)。说明:1、元音字母是a,e,i,o,u,A,E,I,O,U。2、筛选出来的元音字母,不需要剔重;最终输出的字符串,小写元音字母排在前面,原创 2014-04-13 10:44:15 · 2268 阅读 · 0 评论 -
我国公民的身份证号码合法性判断
我国公民的身份证号码特点如下:1、长度为18 位;2、第1~17 位只能为数字;3、第18 位可以是数字或者小写英文字母x。4、身份证号码的第7~14 位表示持有人生日的年、月、日信息。例如:511002198808080111 或51100219880808011x。请实现身份证号码合法性判断的函数。除满足以上要求外,需要对持有人生日的年、月、日信息进行校验。年份大于原创 2014-04-13 12:06:43 · 903 阅读 · 0 评论 -
字符串中出现多个相同的字符,将非首次出现的字符过滤掉
题目描述通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。比如字符串“abacacde”过滤结果为“abcde”。要求实现函数:void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr);【输入】pInputS原创 2014-04-13 12:38:59 · 1435 阅读 · 0 评论 -
通过键盘输入100 以内正整数的加、减运算式,请编写一个程序输出运算结果字符串
题目描述:通过键盘输入100 以内正整数的加、减运算式,请编写一个程序输出运算结果字符串。输入字符串的格式为:“操作数1 运算符操作数2”,“操作数”与“运算符”之间以一个空格隔开。补充说明:1. 操作数为正整数,不需要考虑计算结果溢出的情况。2. 若输入算式格式错误,输出结果为“0”。要求实现函数:void arithmetic(const char *pInputS原创 2014-04-13 17:32:17 · 906 阅读 · 0 评论 -
二叉树的建立和遍历
先序的方法建立二叉树()原创 2014-04-28 22:10:32 · 382 阅读 · 0 评论 -
机试题-一种精确计算
精确计算输入两个数M,N(均小于100),M/N可能为有限小数,也可能为无限循环小数,如:1/4=0.251/7=0.142857142857142857......如果M/N为有限小数,则输出其所有的小数位,如果M/N为无限循环小数,则输出它小数点后面的一个循环节例如输入1 4输出25输入2 7输出285714原创 2014-09-18 00:12:45 · 425 阅读 · 0 评论 -
常见面试题:二维递增数组的快速查找,复杂度(M+N-2),M,N分别为数组的行数和列数
题目:一个二维数组,按行按列都是递增的,原创 2014-09-19 23:31:03 · 1372 阅读 · 0 评论 -
链表出错记录
1.今天在使用链表时遇到了一个十分隐秘的错误。在使用一个全局变量类型的链表时,链表中记录的是history数据,在需要删除所有的节点的时候,因为头节点没有储存信息,而且在添加新的history的时候需要使用到链表的头节点。在删除所有的历史节点的时候,只是删除了除头节点之外的所有的节点。但是如果在删除所有的history后,查询多有的history(递归访问所有的history节点),这时候就会访问原创 2015-04-15 22:24:39 · 467 阅读 · 0 评论 -
测试文件的大小
可以使用fseek(FILE *fp, long offset, int base);和ftell(FILE *fp);原创 2014-04-16 15:50:28 · 568 阅读 · 0 评论 -
判断扑克牌的数值情况(5张)
一副牌中发五张扑克牌给你:让你判断数字的组成: 有以下几种情况: 1:四条:即四张一样数值的牌(牌均不论花色)2:三条带一对 3:三条带两张不相同数值的牌 4:两对 5:顺子包括 10,J,Q,K,A 6:什么都不是 7:只有一对#include void sort(int data[], int len){ //排序, 由小到大 int i, j; int temp; for(i原创 2014-04-13 00:28:52 · 1072 阅读 · 0 评论 -
求一个整型数字中有没有相同的部分
求一个整型数字中有没有相同的部分,例如12389756123这个整型数字中相同的部分是123,相同的部分至少应该是2位数,如果有相同部分返回1,如果没有则返回0。方法是先将整型数字转换到数组中,再判断。函数为 int same(int num) 其中num是输入的整型数字原创 2014-04-13 22:19:02 · 1115 阅读 · 0 评论 -
求两个字符串的乘积,结果存到字符串中
求两个字符串的乘积,结果存到字符串中,例如字符串一中存的“657891”,字符串二中存的“521”,分别将字符串中的字符转换成整型数字,进行计算后,再转换成字符类型存储起来函数为 void mul(char *input1,int n,char *input2, int m,char *output)其中input1和input2是输入,n是input1的长度,n2是input2的长度。Ou原创 2014-04-15 23:06:11 · 1822 阅读 · 0 评论 -
记录程序运行的时间,使用<time.h>头文件
只可以粗略的记录时间,#include #include #include void main(){ clock_t startTime, endTime; startTime = clock(); //暂时挂起程序1秒 Sleep(1000); endTime = clock(); printf("startTime = %f\tendTime = %f\n", (do原创 2014-04-16 16:19:40 · 966 阅读 · 0 评论 -
字符串和整形相互转换【c语言】
1.将字符串类型转换成整形,未考虑原创 2014-04-15 23:15:07 · 2754 阅读 · 0 评论 -
两种方法打印杨辉三角
/**********************************************************************************************************************************打印杨辉三角*************************************************************原创 2014-04-16 19:59:42 · 630 阅读 · 0 评论 -
寻找矩阵中的鞍点
鞍点:一行中的最大值且为所在列的最小值,没有原创 2014-04-16 21:02:19 · 1926 阅读 · 0 评论 -
判断给定的日期是一年中的第几天
int dayOfYear(int year, int month, int date){ int i; int days[13] = {0, 31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int day = 0; //判断是不是闰年,然后设置二月的天数 if((year % 400 == 0) || ((year % 100 != 0原创 2014-04-16 22:41:27 · 3350 阅读 · 0 评论 -
visual studio对于未赋值的int型的处理
//未初始化的int变量,编译器自动赋值#include void main(){ int num; printf("num is : %d",num); printf("num is :%x", num); getchar();}运行的结果如下:(首先编译器会报错,指出使用了一个未初始化的变量)原创 2014-04-06 09:43:48 · 1442 阅读 · 0 评论 -
判断对称数、回文字符串
一、判断一个数是不是对称数原创 2014-04-07 10:18:09 · 795 阅读 · 0 评论 -
判断一个数中是不是含有1、含有多少个1
/**判断一个数是否包含数字1,是的话返回1,不是的话返回0*/#include int isinclude(int data){ int temp;//用来存放从data数中取出的数字 while(data > 0){ temp = data % 10; data /= 10; if(temp == 1){ return 1;//出现数字1 } } retu原创 2014-04-07 18:46:04 · 2225 阅读 · 0 评论 -
贪心算法实现找零问题求解
贪心算法就是,每一步选择一个最优解,最后实现整体的原创 2014-04-08 21:04:36 · 3891 阅读 · 0 评论 -
两种方法对一个数进行质因子式分解
1.不使用递归逐步找出原数的因子数原创 2014-04-18 12:26:16 · 1174 阅读 · 0 评论 -
一个字符串压缩程序
题目描述:通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。压缩规则:1. 仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc".2. 压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"要原创 2014-04-13 13:12:48 · 969 阅读 · 0 评论 -
使用递归反向输出一个字符串
/**********************************************************************************************************************************使用递归将一个字符串反向输出*****************************************************原创 2014-04-16 21:30:34 · 2771 阅读 · 0 评论 -
八皇后问题回溯解法
/****************************************************************************************************************///八皇后问题的求解:使用回溯法#include #include #define N 8int count = 0;/**Param:line :正在排的原创 2014-05-10 23:33:19 · 412 阅读 · 0 评论 -
链表
匆忙实现,有时间再优化总结。#include #include #include #define MAXSIZE 10struct Node{ long value; struct Node* next;};struct Node* getNum(){ char str[MAXSIZE+1]; struct Node *head, * p1, *原创 2015-04-12 22:11:49 · 336 阅读 · 0 评论