c/c++
N3verL4nd
中年老男人~
展开
-
ITAT复赛答案集锦(1)
第一届1. 输入一个五位整数,将它反向输出。例如输入12345,输出应为54321。(15分)Strrev();2. 用两种循环结构分别编程计算1+2+3…+100的值。运行结果为“1+2+…+100=5050”(15分)3. 从终端读入20个数据到数组中,统计其中正数的个数,并计算它们之和。(15分)4. 利用指针实现将5个整原创 2012-10-31 21:44:28 · 2754 阅读 · 0 评论 -
strcat函数
函数原型:extern char *strcat(char *dest,char *src)参数说明:dest为一个目的字符串的指针,即被连接的字符串(在前),src为一个源字符串的指针(在后)。 所在库名:#include 函数功能:把src所指字符串添加到dest结尾处实现字符串的连接,连接过程覆盖dest结尾处的'/0'。 返回说明:src转载 2012-11-02 08:04:51 · 926 阅读 · 0 评论 -
strlen函数
函数原型:extern int strlen(char *str)参数说明:str要被计算的字符串。 所在库名:#include 函数功能:计算字符串str的长度,但是不包含“/0”。 返回说明:返回字符串str的长度,是一个整型值。其它说明:暂时无。实例:#include string.h>#include stdi转载 2012-11-02 08:27:15 · 808 阅读 · 0 评论 -
strdup函数
函数原型:extern char *strdup(char *str)参数说明:str待复制的字符串。 所在库名:#include 函数功能:实现复制字符串str。 返回说明:返回复制的新字符串的指针,复制失败返回NULL。其它说明:暂时无。实例:#include string.h>#include stdio.h>转载 2012-11-02 08:30:06 · 826 阅读 · 0 评论 -
strcmp函数
函数原型:extern int strcmp(char *str1,char * str2)参数说明:str1为第一个要比较的字符串,str2为第二个要比较的字符串。 所在库名:#include 函数功能:比较字符串str1和str2。 返回说明:返回整数值:当str1str2时,返回值>0。这种比较是按照字符的字典序进行比较。其它说明:转载 2012-11-02 08:16:50 · 731 阅读 · 0 评论 -
strcspn函数
函数原型:extern int strcspn(char *str1,char *str2)参数说明:str1为参照字符串,即str2中每个字符分别与str1中的每个字符比较。 所在库名:#include 函数功能:以str1为参照,比较字符串str2中的字符是否与str中某个字符相等(也就是检索str2中的字符是否在str1中存在),如果第一次发现相等,转载 2012-11-02 08:27:58 · 710 阅读 · 0 评论 -
strpbrk函数
函数原型:extern char *strpbrk(char *str1, char *str2)参数说明:str1待比较的字符串,str2为指定被搜索的字符串。 所在库名:#include 函数功能:比较字符串str1和str2中是否有相同的字符,如果有,则返回该字符在str1中的位置的指针。 返回说明:返回指针,搜索到的字符在str1中的索引转载 2012-11-02 09:10:44 · 609 阅读 · 0 评论 -
memchr函数
函数原型:extern void *memchr(void *str, char ch, unsigned count)参数说明:从str所指内存区域的前count个字节查找字符ch。 所在库名:#include 函数功能:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。 返回说明:返回void*类型指针(或者转载 2012-11-02 09:20:05 · 858 阅读 · 0 评论 -
strstr函数
函数原型:extern char *strstr(char *haystack, char *needle)参数说明:haystack为一个源字符串的指针,needle为一个目的字符串的指针。 所在库名:#include 函数功能:从字符串haystack中寻找needle第一次出现的位置,但是该函数不比较结束符NULL。 返回说明:返回指向第一转载 2012-11-02 08:04:10 · 839 阅读 · 0 评论 -
strcpy,stpcpy函数
函数原型:extern char *strcpy(char *dest,char *src) 或者extern char *stpcpy(char *dest,char *src)参数说明:dest为一个目的字符串的指针,src为一个源字符串的指针。 所在库名:#include 函数功能:把src所指的以“/转载 2012-11-02 08:11:57 · 1170 阅读 · 0 评论 -
strncpy函数
函数原型:extern char *strncpy(char *dest, char *src, int n)参数说明:dest为目的字符串,src为源字符串,n。 所在库名:#include 函数功能:将src中的前n个字符(不包含"/0")复制到dest中,如果dest长度大于src,则复制完src中指定的前n个字符后其余全部用"/0"填充。转载 2012-11-02 09:08:59 · 802 阅读 · 0 评论 -
strrev函数
函数原型:extern char *strrev(char *str)参数说明:str为源字符串,即待逆置的字符串。 所在库名:#include 函数功能:实现字符串str的逆置。 返回说明:返回逆置字符串的指针。其它说明:暂时无。实例:#include string.h>#include stdio.h>in转载 2012-11-02 09:12:11 · 681 阅读 · 0 评论 -
strset函数
函数原型:extern char *strset(char *str, char character)参数说明:str为源字符串,即将要被操作的字符串,character为一个字符。 所在库名:#include 函数功能:将字符串str中所有的字符都设置成为指定的字符character。 返回说明:返回所有字符都设置为character后的字符串转载 2012-11-02 09:14:21 · 1324 阅读 · 0 评论 -
strchr函数
函数原型:extern char *strchr(char *str,char character)参数说明:str为一个字符串的指针,character为一个待查找字符。 所在库名:#include 函数功能:从字符串str中寻找字符character第一次出现的位置。 返回说明:返回指向第一次出现字符character位置的指针,如果没找到则转载 2012-11-02 08:18:08 · 664 阅读 · 0 评论 -
strcmpi,stricmp函数
函数原型:extern int strcmpi(char *str1,char * str2) 或者 extern int stricmp(char *str1,char * str2)参数说明:str1为第一个要比较的字符串,str2为第二个要比较的字符串。 所在库名:#include 函数功能:比较字符串st转载 2012-11-02 08:20:46 · 1730 阅读 · 0 评论 -
strlwr,strupr函数
函数原型:extern char *strlwr(char *str) extern char *strupr(char *s)参数说明:str为要转换的字符串。 所在库名:#include 函数功能:将字符串str中的大(小)写字母转换成为小(大)写字母,其它的不进行转换。 返回说明:返回转换后的字转载 2012-11-02 08:33:25 · 1261 阅读 · 0 评论 -
strncat函数
函数原型:extern char *strncat(char *dest,char *src,int n)参数说明:src为源字符串,dest为目的字符串,n为指定的src中的前n个字符。 所在库名:#include 函数功能:把src所指字符串的前n个字符添加到dest结尾处,覆盖dest结尾处的'/0',实现字符串连接。 返回说明:返回指针,转载 2012-11-02 08:51:57 · 773 阅读 · 0 评论 -
strncmp函数
函数原型:extern int strcmp(char *str1,char * str2,int n)参数说明:str1为第一个要比较的字符串,str2为第二个要比较的字符串,n为指定的str1与str2的比较的字符数。 所在库名:#include 函数功能:比较字符串str1和str2的前n个字符。 返回说明:返回整数值:当str1str2时转载 2012-11-02 08:53:39 · 764 阅读 · 0 评论 -
strnicmp,strncmpi函数
函数原型:extern int strnicmp(char *str1,char * str2,int n) 或者extern int strncmpi(char *str1,char * str2,int n)参数说明:str1为第一个要比较的字符串,str2为第二个要比较的字符串,n为指定字符串str1和str2进行比较的字符的个数。转载 2012-11-02 08:57:09 · 869 阅读 · 0 评论 -
memset函数
函数原型:extern void *memset(void *buffer, int c, int count)参数说明:buffer为源字符串,c为要初始化的字符的值,count为初始化buffer中字符的个数。 所在库名:#include 函数功能:把buffer所指内存区域的前count个字节设置成字符c。 返回说明:返回void*类型指针转载 2012-11-02 09:18:45 · 553 阅读 · 0 评论 -
strtok函数
函数原型:extern char *strtok(char *string, char *seps)参数说明:string为源字符串,seps为指定的分隔符,是一个分隔字符串的集合。 所在库名:#include 函数功能:将字符串string中所有在seps中出现的分隔符替换掉。 返回说明:返回指向下一个标记串。当没有标记串时则返回空字符NULL转载 2012-11-02 09:16:21 · 582 阅读 · 0 评论 -
strtok函数
函数原型:extern char *strtok(char *string, char *seps)参数说明:string为源字符串,seps为指定的分隔符,是一个分隔字符串的集合。 所在库名:#include 函数功能:将字符串string中所有在seps中出现的分隔符替换掉。 返回说明:返回指向下一个标记串。当没有标记串时则返回空字符NULL转载 2012-11-03 21:32:22 · 520 阅读 · 0 评论 -
memcmp,memicmp函数
函数原型:extern int memcmp(void *str1, void *str2, unsigned int n)参数说明:str1和str2为指定作比较的字符串,比较两个字符串的前n个字节。 所在库名:#include 函数功能:比较字符串str1和str2在内存区域中的的前n个字节是否相同。 返回说明:当str1str12时,返回值转载 2012-11-03 21:31:47 · 871 阅读 · 0 评论 -
字符函数
原型:extern int isalnum(int c);用法:#include 功能:判断字符c是否为字母或数字说明:当c为数字0-9或字母a-z及A-Z时,返回非零值,否则返回零。举例:#include stdio.h>#include ctype.h>int main(){ int c; c='a'; printf("%c转载 2012-11-03 21:32:10 · 604 阅读 · 0 评论 -
memcpy,memccpy,memmove函数
函数原型:extern void *memcpy(void *dest, void *src, unsigned int count)参数说明:dest为目的字符串,src为源字符串,count为要拷贝的字节数。 所在库名:#include 函数功能:将字符串src中的前n个字节拷贝到dest中。 返回说明:src和dest所指内存区域不能重叠,转载 2012-11-03 21:33:00 · 705 阅读 · 0 评论 -
如何用C语言获取文件的大小
ITAT复赛的一个题,涉及文件操作,不会=。=回学校学习了下:fseek语法: #include int fseek( FILE *stream, long offset, int origin );函数fseek()为给出的流设置位置数据. origin的值应该是下列值其中之一(在stdio.h中定义):原创 2012-11-05 08:24:48 · 836 阅读 · 0 评论 -
单链表基本操作
#include #include #include #include #include /*c++实现简单的单链表操作*/using namespace std;typedef struct student{ int data; struct student *next;}node;//建立单链表 node *creat(){ n原创 2012-11-06 13:06:06 · 581 阅读 · 0 评论 -
双链表基本操作
#include #include #include #include /*c++实现双链表的基本操作*/using namespace std;typedef struct student{ int data; struct student *pre; struct student *next;}dnode;//创立链表 dn原创 2012-11-06 13:07:12 · 592 阅读 · 0 评论 -
.h与.c的区别和联系
其实要理解C文件与头文件有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:1.预处理阶段2.词法与语法分析阶段3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格原创 2012-11-09 09:07:36 · 822 阅读 · 0 评论 -
指向函数的指针
#includeusing namespace std;int max(int x,int y){ return x>y?x:y;}int main(){ int (*p)(int,int); p = max; cout<<(*p)(4,5)<<endl; cout<<max(4,5)<<endl;}int (*p)( int,int ); 用来定义 p 是一个指向原创 2012-11-09 20:39:23 · 827 阅读 · 0 评论 -
c++五种内存分配、堆与栈区别
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序转载 2012-11-10 21:11:52 · 2444 阅读 · 0 评论 -
关于对ACM OJ大数据递归栈溢出问题的解决方案
关于对ACM OJ大数据递归栈溢出问题的解决方案Posted by This_poet on 2012-08-15编辑 问题来源我在为参加NOIP的同学出模拟题的时候,免不得去BNU、HDU这些我校同学不常去的题库上面找题来强化或改编。今天我去找了BNU Contest上的一道题,涉及到需要缩环为点。显然,递归tarjan是缩环的最方便选择。然而,有时候题目当中的数据范围是转载 2012-11-11 14:12:48 · 2607 阅读 · 0 评论 -
烫烫烫烫烫屯屯屯屯
#includeusing namespace std;int main(){ char *s = (char*)malloc(10); cout<<s<<endl; char p[10]; cout<<p<<endl;}出现以上原因都是由于内存没有初始化造成的,而对于栈中内存如果没有初始化,则会出现“烫烫烫烫烫烫”。对于堆中内存如果没有初始化,则会出现“屯屯原创 2012-11-11 14:52:43 · 1424 阅读 · 0 评论 -
g++命令行详解
gcc/g++参数详解2009-02-18 16:21这 篇文档是我的关于gcc参数的笔记,我很怀念dos年代我用小本子,纪录所有的dos 命令的参数.哈哈,下面的东西可能也不是很全面,我参考了很多的书,和gcc的帮助.不全的原因是,有可能我还没有看到这个参数,另一种原因是,我可能还 不会用它 不过,我会慢慢的补齐的.哈哈 如果你要转在本文章请保留我email(pianopan@b转载 2012-11-26 17:03:11 · 765 阅读 · 0 评论 -
预处理,编译, 优化, 汇编, 链接--(转)
编译:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。 C源程序头文件-->预编译处理(cpp)-->编译程序本身-->优化程序-->汇编程序-->链接程序-->可执行文件 1.编译预处理 读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进转载 2012-11-25 18:48:28 · 709 阅读 · 0 评论 -
指向二维数组的指针
#include#include using namespace std;int main(){ int num[3][4] = {{1,2,3,4},{2,3,4,5},{3,4,5,6}}; int (*p)[4] = num; /*for(p=num;p!=num+3;p++) { for(int *q=*p;q!=*p+4;q++) cout<<*q<<" ";原创 2012-11-11 16:32:42 · 726 阅读 · 0 评论 -
VC++中文件类型小结
.dsw---- 这种类型的文件在VC中是级别最高的,称为Workspace文件 .dsp---- 在VC中,应用程序是以Project的形式存在的,Project文件的扩展名为.dsp,在Workspace文件中可以包含多个Project,由Workspace文件对它们进行统一的协调和管理,每个工程都对应一个dsp文件 .opt---- 与dsw类型的Workspace文件像配合的一个重要的原创 2012-11-12 18:16:18 · 670 阅读 · 0 评论 -
hdoj_1016Prime Ring Problem
Prime Ring ProblemTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 15175 Accepted Submission(s): 6903Problem DescriptionA ring原创 2012-11-13 20:41:46 · 767 阅读 · 0 评论 -
const小结
对于const,编辑器仅仅做纸面上的检查,如#define。const int x = 10;cout实际上在编译阶段,已经替换为:cout(VS2010)问题1:const变量&常量 例:为什么下面的例子在使用一个const变量来初始化数组,ANSI C的编译器会报告一个错误呢? const int n = 5;原创 2012-11-13 14:10:48 · 740 阅读 · 0 评论 -
幻境奇缘
#include#includeint main(){ char p[] = "1234567890"; char *ppp = p; for(int i = 0; i < strlen(ppp); i++) { printf("%d", i); ppp++; }}输出结果:01234#include#includeint main(){原创 2012-11-13 19:24:39 · 817 阅读 · 0 评论