摘要:
#include <stdio.h>void shell_sort (int *a, int len);void swap (int *a, int i, int j);void print (int *a, int len);int main (void){ int a[] = {3, 0, 2, 4, 8, 7, 1, 5}; int len = sizeof (a) / sizeof (a[0]); print (a, len); shell_sort (a, len); print (a, len); return 0;}void shell_sort (int *a, i 阅读全文
摘要:
今天又写qsort,竟然憋了很久写不出来,最后翻了先前的代码。可见程序算法是容易忘记得。今天再注释一遍,希望以后忘得慢点。#include <stdio.h>/*这个函数没啥好说的*/void swap (int *a, int i, int j){ int temp = a[i]; a[i] = a[j]; a[j] = temp;}/*设<表示小于或等于end的数,>表示大于end的数,*表示未知大小的数,运行中下标指向是这个样子:《 《 《 》》 》 》 * * *p i j r思路就是用j来遍历数组,从中选出小于a[end]的与小于等于a[end]的... 阅读全文
摘要:
先前在学校学过一个学期的C++,其实只是粗通皮毛。现在重新认识了C++的意义,打算重新把它捡起来。C++是一门非常通用的语言,可以通过它获得参与大型项目的能力。在以后的开发中,C++必然还有强大的生命力,是C的很好扩展。所以,认真学习C++,掌握是C++是必须的。 阅读全文
摘要:
删除空格的小程序内容如下。#include <stdio.h>void blankdel (char *str);int main (void){ char str[20] = " ab cd ef "; puts (str); blankdel (str); puts (str); return 0;}void blankdel (char *str){ char *p = str; char *q = str; while (*p) (*p != ' ') ? (*q++ = *p++) : (p++); *q = '\0'; 阅读全文
摘要:
#include <stdio.h>int wordcnt (const char *str);int main (void){char str[20] = " b cde cd ef ";printf ("%d\n", wordcnt (str));return 0;}int wordcnt (const char *str){int cnt = 0;int flag = 0;//空格则flag标记为0,字符为1while (*str){if ((!isspace (*str)) && (flag == 0)){cnt++; 阅读全文
摘要:
参加了几次笔试和面试,这是最大的感悟。终于有所收获吧---知道自己不知道。现在才知道自己的基础太差了,希望还不是太晚。所以不要总是想着能做点什么“大事”,能立即体验到什么“效果”吧。不要总是满足与别人的小小恭维与无知鄙视吧。编程是一种乐趣,编程是一种生活选择。踏踏实实从基础做起,重筑自己的知识体系!先很俗套的给自己制定一个目标,用三个月的时间重新学习汇编和数据结构。尽管时间很紧,周围都是紧张与浮躁的空气。希望自己能保持平静积极的心态。--------------------------------------------新增一点:无算法,不编程,牢记编程学习的核心永远是算法! 阅读全文
摘要:
我在CSDN发的一个帖子,很久没写日志了,拿来充数,也回顾一下。C代码如下:#include<stdio.h>#include<string.h>#include<stdlib.h>void func1(char *s){ char buf[12]; strcpy(buf,s);}void func2(void){ printf("Why I can be printed ?\n"); exit (0);}int main(void){ char badcode[]="abcdefghijklmnopqrstuvwxyz&quo 阅读全文
摘要:
光标控制命令命令 光标移动h或^h 向左移一个字符j或^j或^n 向下移一行k或^p 向上移一行l或空格 向右移一个字符G 移到文件的最后一行nG 移到文件的第n行w 移到下一个字的开头W 移到下一个字的开头,忽略标点符号b ... 阅读全文
摘要:
参考了下面的链接http://ihome.ust.hk/blogs/home/josephwu/GNU_slash_Linux/2007/06/09/%E5%B0%86locale%E4%BB%8Ezh-CN-GB2312%E8%BD%AC%E5%88%B0zh-CN-UTF-8%E7%9A%84%E4%B8%80%E4%BA%9B%E9%97%AE%E9%A2%98%E5%92%8C%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95.html1.测试文件的编码因为很多操作都是要知道原来文件的编码.enca用法,enca filename2.转换文件名convmvonvm 阅读全文
摘要:
shell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法,以后用到的时候可以来看,呵呵。 1、错误方法举例 a) var=1+1 echo $var 输出的结果是1+1,悲剧,呵呵 b) var=1 var=$var+1 echo $var 输出结果是1+1,依然悲剧,呵呵 2、正确方法 1)使用let var=1 let "var+=1" echo $var 输出结果为2,这次没有悲剧 注意: a)经我测试let几乎支持所有的运算符,在网上看到一篇文章说“let不支持++、-... 阅读全文