- 博客(87)
- 收藏
- 关注
原创 Linux 僵尸进程与孤儿进程
僵尸进程产生原因子进程先于父进程退出,他要保留退出原因在pcb中,因此退出后不会自动释放所有资源,子进程退出后操作系统会通知父进程,子进程退出了,去获取一下原因,然后完全释放子进程资源,假如父进程不管子进程的退出状态,那么这个子进程将进入僵死状态,成为僵尸进程代码实现僵尸进程//该程序为20秒的僵尸进程,在第10秒时变为僵尸进程,30秒时退出 #include <stdio.h...
2018-11-06 19:22:39 322 1
原创 Linux 关于编译、编辑、调试的一些问题
Linux下的编辑器Vim EditorVim是一个类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性,Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999年Emacs被选为Linuxworld文本编辑分类的优胜者,Vim屈居第二。但在2000年2月Vim赢得了Slashdot Beanie的最佳开放源代码文本编辑器大奖,又将Emacs推至...
2018-10-04 16:24:59 354
原创 Linux 一些重要的目录及命令
重要目录根目录下的目录/bin 二进制可执行命令/dev 设备特殊文件/home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示/lib64 linux 64位(可以uname -a查看下内核是否位64位的)用的lib库/media 作为外接存储设备的盘符/mnt 系统提供这个目录是让用户临时挂载其他的文件系统/opt 安装第三方软件的...
2018-10-03 17:05:35 351
原创 数据结构 栈 迷宫问题
1.题目 如上图,1为路,0为墙,求可以走出去的最短路径2.基本思路首先判断该点是否为入口,若是则把该位置的数值改为2,然后入栈,分别判断该点的上下左右是否可以走通,若可以则把可走通的位置改为前一个位置上的数值加一,若不能则判断下一个方向,都走不通则返回;当找到可走通的位置并修改完数值后,把该位置入栈,判断该位置是否为出口,若为出口,则把栈中元素的的个数与存放最短路径的栈中的元素...
2018-08-25 10:10:16 609
原创 数据结构 栈 逆波兰表达式
1.题目逆波兰表达式又叫做后缀表达式。在通常的表达式中,二元运算符总是置于与之相关的两个运算对象之间,所以,这种表示法也称为中缀表示。 12*(3+4)-6+8/2 的逆波兰表达式为12 3 4 + * 6 - 8 2 / + 用栈计算该逆波兰表达式的值2.基本思路把逆波兰表达式以结构体数组的方式存储,结构体包含两个元素,第一个元素是说明这个符号是数据还是运算符号,第二个符号是...
2018-08-23 16:44:02 600
原创 数据结构 栈 括号匹配问题
1.题目:a."(())abc{[(])}";b."(()))abc{[]}";c."(()()abc{[]}";d."(())abc{[]()}";2.整体思路以第一个为例: 3.程序代码//Stack.h#ifndef __STACK_H__#define __STACK_H__#include <stdio.h>#include...
2018-08-18 11:28:27 566
原创 数据结构 链表
程序代码:LinkList.h文件://防止重定义,与下面#endif对应#ifndef __LINKLIST_H__#define __LINKLIST_H__//整个工程所需要的头文件#include <stdio.h>#include <Windows.h>#include <stdlib.h>#include <asse...
2018-07-20 10:52:03 216
原创 数据结构 顺序表
程序代码:SeqList.h文件://防止重定义,与下面#endif对应#ifndef __SEQLIST_H__#define __SEQLIST_H__//整个工程所需要的头文件#include <stdio.h>#include <Windows.h>#include <assert.h>#include <stdlib....
2018-06-19 12:23:00 348
原创 C 通讯录
要求通讯录可以用来存储1000个人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人 程序代码根据所提出的要求可先创建一个结构体来存放联系人的具体信息,为了构...
2018-06-05 20:57:30 350
原创 C 有关结构体的一些知识
结构体类型的创建结构是一些值的集合,这些值称为成员变量,结构的每个成员可以是不同类型的变量。例如描述一个学生: 1.声明类型的同时对结构体变量进行定义struct Stu{ char name[20]; int age; char sex[5]; char id[20];}stu;2.先声明结构体类型,再对变量进行定义struct St...
2018-05-26 15:57:41 487
原创 C 打印日历
1.题目给出指定的年和月 打出所对应的日历2.程序代码已知一个基准天,2000.1.1是星期六,总体思路,要先求出所求年份的1.1是星期几,再求出所求月份的1号是星期几,之后再考虑闰年和平年的问题,还有每个月天数的问题,所以创建一个全局的二维数组,分别存放闰年和平年的每个月所对应的天数,为了让1月能与数组中的months[][1]对应起来,所以再前面加上一个元素0;打印日历时,应注意前...
2018-05-23 00:13:29 759
原创 C 八皇后问题
1.题目八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。计算机发明后,有多种计算机语言可以...
2018-05-17 23:01:07 398
原创 C 蛇形数组
1.题目例如: 2.程序代码void print_arr(int arr2[N][N])//打印数组{ int i, j; for (i = 0; i < N; i++) { for (j = 0; j < N; j++) { printf("%2d ", arr2[i][j]); ...
2018-05-15 22:12:44 586
原创 C 对指针数组、数组指针 和 函数指针、函数指针数组、指向函数指针数组的指针的理解
0.指针和数组的定义与声明(说明指针和数组是不一样的)①//text.cchar arr[] = "abcdef"; //在text.c文件中定义数组//main.certern char *arr; // 调用其他源文件中的参数时要用erternint main(){ printf("%s\n", arr); return 0;}执行后程序崩溃;t...
2018-05-07 17:06:18 376
原创 C 模拟实现一些常用的函数
1.题目实现memmove2.程序代码memmove用于从ori拷贝count个字节到obj,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。但复制后ori内容会被更改。但是当目标区域与源区域没有重叠则和memcpy函数功能相同。 若为这种情况obj比ori小,应采取从前向后赋值,若采取从后向前赋值,6和5会把3 4消除,没...
2018-05-06 16:57:30 363
原创 C 冒泡排序(字符串)
1.题目写冒泡排序可以排序多个字符串。 2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#include <string.h> void bubble_sort(char *str[], int len){ int i ...
2018-04-29 19:52:08 1005
原创 C 整数计算器(用main函数的参数实现)
1.题目使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#...
2018-04-29 16:08:12 351
原创 C 喝汽水问题
1.题目喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。编程实现。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int count_num(int money)//实现计算汽水个数的函数{ int i = 0;...
2018-04-29 13:48:29 469
原创 C 找数组中没用重复出现的两个数
1.题目一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。 找出这两个数字,编程实现。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <windows.h>void find_num(const int arr[10]){ int i = 0;...
2018-04-28 22:02:18 462
原创 C 模拟printf函数(可变参数)
1.题目模拟实现printf函数,可完成下面的功能: 能完成下面函数的调用 print(“s ccc d.\n”,”hello”,’b’,’i’,’t’,100); 函数原型: print(char *format, …)2.程序代码#define _CRT_SECURE_NO_WARNIGS 1#include <stdio.h>#include <...
2018-04-28 21:54:46 293
原创 C 求函数参数最大值
1.题目使用可变参数,实现函数,求函数参数的最大值2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#include <stdarg.h>int Max(int n, ...){ va_list arg; int...
2018-04-27 16:42:05 1400
原创 C 求函数参数的平均值
1.题目使用可变参数,实现函数,求函数参数的平均值。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <windows.h>#include <stdarg.h>int average(int n, ...){ va_list arg;//...
2018-04-27 15:16:29 1619
原创 C 打印一个整数的每一位
1.题目递归方式实现打印一个整数的每一位2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>void print_int(int num)//{ if (num < 10) { printf("%d ", n...
2018-04-27 14:22:16 390
原创 C 求n的阶乘
1.题目递归和非递归分别实现求n的阶乘2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int factorial1(int num)//非递归方式求n的阶乘{ int i = 0; int count = 1; fo...
2018-04-26 17:09:11 412
原创 C 求字符串长度
1.题目递归和非递归分别实现strlen2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int my_strlen1(char *string)//非递归方式求字符串长度{ int count = 0; while (*(s...
2018-04-26 16:52:41 368
原创 C 反转字符串中的字符
1.题目编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列。 要求:不能使用C函数库中的字符串操作函数。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#include &l...
2018-04-26 16:40:25 701
原创 C 返回组成这个数字的数字之和
1.题目写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和,例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是192.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int DigitSum(int...
2018-04-25 17:02:36 278
原创 C 求n^k
1.题目编写一个函数实现n^k,使用递归实现2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int my_pow(int radix, int index)//用递归求出n^k{ if (index == 1) { ...
2018-04-24 18:13:35 432
原创 C 斐波那契数列
1.题目递归和非递归分别实现求第n个斐波那契数。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <windows.h>int fib_num2(int num)//用递归实现求第n个斐波那契数列{ if (num <= 2) { ...
2018-04-24 17:58:48 629
原创 C 函数的调用过程(栈帧)
以该程序为例:#include <stdio.h>int Add(int x, int y){ int z = 0; z = x + y; return z;}int main(){ int a = 10; int b = 20; int ret = 0; ret = Add(a, b); prin...
2018-04-21 22:11:11 209
原创 C 判断一个字符串是否由另一个字符串旋转得到
1.题目判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如:给定s1 = AABCD和s2 = BCDAA,返回1,给定s1=abcd和s2=ACBD,返回0. 2.程序代码方法一:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#inclu...
2018-04-15 22:40:08 291
原创 C 写一个函数使字符串向左移指定个位
1.题目实现一个函数,可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 2.程序代码方法一:#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>void left_move(char arr[7], ...
2018-04-15 20:52:13 2047
原创 C 二维矩阵查找数字
1.题目//杨氏矩阵 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N); 2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <windows.h>int find_n...
2018-04-15 00:13:20 400
原创 C 交换数组中的元素
1.题目输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>void change_num(int arr[10], int sz)//定义一个函数,做到题目的要求{ ...
2018-04-14 17:19:20 1458 2
原创 C 对浮点数的比较
1.程序代码include <stdio.h>#define EXP 0.0000000001int main(){ double i = 20.0; double j = i / 7.0; if (((j*7-i) > -EXP) &&((j*7-i) < EXP)) {...
2018-04-12 16:00:31 266
原创 C 关于%d %f的一些特殊用法
1.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int main(){ int i = 5; int j = 10; int k = 8; float a = 10.5; printf("[%*d]\n", ...
2018-04-10 15:04:18 973
原创 C 交换一个数的奇偶数位
1.题目定义一个宏,交换一个数字二进制形式下的奇偶数位2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#define CHANGE(x) (((x & (0x55555555)) << 1)|((x & (0xAAAAA...
2018-04-10 14:15:26 448
原创 C 写一个宏输出两个数中较大的数
1.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>#define MAX(a, b) ((a) > (b) ? (a) : (b))int main(){ int x = 0; int y = 0; printf("...
2018-04-09 17:29:01 1293
原创 C 交换数组中的元素
1.题目有一个字符数组的内容为:”student a am i”,请你将数组的内容改为”i am a student”. 要求:不能使用库函数。只能开辟有限个空间(空间个数和字符串的长度无关)。2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>...
2018-04-09 17:11:10 900 1
原创 C 找数字
1.题目一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。 请找出这个数字。 2.程序代码#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <Windows.h>int find_num(int arr1[9]){ int i = 0; int ...
2018-04-08 11:03:04 295
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人