`
文章列表
下面的一些程序要求输入以EOF终止。如果您的操作系统难以使用或不能使用重定向,则使用一些其他的判断来终止输入,例如读取&字符。   1.设计一个程序,统计从输入到文件结尾为止的字符数。     #include<stdio.h> int main(void) { int count = 0 ; printf("input characters:\n"); while(getchar() != EOF) count++; printf("there are%d characters\n",count ...

C中<ctype.h>库

标准库<ctype.h> 1 字符测试函数 1> 函数原型均为int isxxxx(int)2> 参数为int, 任何实参均被提升成整型3> 只能正确处理处于[0, 127]之间的值 isalpha  'A'~'Z', 'a'~'z'isdigit  '0'~'9'isxdigit '0'~'9', 'A'~'F', 'a'~'f'isalnum  isalpha || isdigit islower  'a'~'z'isupper  'A'~'Z' isspace9  '\t'  (tab: 水平制表位)10 '\n'  (li ...
    double a;     scanf("%f",&a);   //应用scanf("%lf",&a); 执行上面语句时,发现double类型的输入不能使用%f进行输入,得用%lf才能正常得到a的值。 而在输出double类型时却可以用%f,这是因为printf("%f",a);在执行时C自动将float型的参数转换成double型。    故double型的输入输出形式如下: double a; scanf("%lf",&a); printf("%f&q ...
下面是对printf()和scanf()函数的说明:   一.printf()函数   1.参数传递 参数传递的机制随实现不同而不同,下面是参数传递在系统中的工作原理.函数调用如下: printf("%ld %ld %ld %ld",n1,n2,n3,n4);            //设n1为float型 n2为double型 n3,n4为long型       该调用告诉计算机把变量n1,n2,n3,n4的值传递给计算机,计算机把它们放置到被称为对战(stack)的一块内存区域中来实现。计算机根据变量的类型而非转换说明符(%ld)把这些值放置到堆栈中 ...
函数名: pow 功  能: 指数函数(x的y次方) 用  法: double pow(double x, double y); 程序例: #include <math.h> #include <stdio.h> int main(void) {    double x = 2.0, y = 3.0;    printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));    return 0; }
转义序列:           序列                              意义                                    \a 报警(ANSI C)       \b 退格       \f 走纸       \n 换行       \r 回车       \t 水平制表       \v 垂直制表       \\ 反斜杠(\)       \' 单引号( ' )       \" 双引号( ...
   1.标准头文件<limits.h>中包含了定义char int short long类型取值的最大值和最小值用常量表示(例如SCHAR_MIN = -128,INT_MAX = 2147483647),<float.h>文件中包含了float类型的大小限制信息。  2.另外,我们可以用      printf("%d",sizeof(int));   语句打印一个数据类型在内存中占的字节数。        我的系统是win7 32位操作系统,编程环境是vs2008,在这个环境中 char型 1字节    -128 ~ 127   ( ...
计算从出生年到现在的天数(假设出生日期是*年1月1日) 代码如下: AgeToDay.cpp   /*AgeToDay.cpp -- 把自己的年龄转换成天数*/ #include<stdio.h> #include<time.h> #include<stdlib.h> #define RUNYEAR 366 //闰年天数 #define PINGY ...
源自:http://hi.baidu.com/hao_%BF%AA%D0%C4/blog/item/8d10ded72f036bd4a144df30.html 1、atof(将字符串转换成浮点型数)相关函数     atoi,atol,strtod,strtol,strtoul表头文件     #include <stdlib.h>定义函数     double atof(const char *nptr);函数说明     atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('')才结束转换,并 将结果返回。 ...
源自:http://blog.csdn.net/jiadelin/article/details/2916329  部分代码有改动 我们可以使用strftime()函数将时间格式化为我们想要的格式。它的原型如下:size_t strftime(     char *strDest,     size_t maxsize,     const char *format,
      C编程的基本策略是使用程序将源代码文件转换为可执行文件,此文件包含可运行的机器语言代码。 C分两步完成这一工作:编译和链接。编译器将源代码转换为中间代码,连接器将此中间代码与其他代码相结合来生成可执行文件。C使用编译和链接生成可执行文件的方法便于程序的模块化。您可以分别编译各个模块,然后使用连接器将编译过的模块结合起来。这样,如果需要改变一个模块,则不必重新编译所有其他模块。同时,连接器将程序与预编译的库代码结合起来。       中间文件的形式有多种选择。最一般的选择,是将源代码转换为机器语言代码,将结果放置在目标代码文件中。虽然目标文件包含机器语言代码,但该文件还不能运行。目标 ...
在写C/C++程序时总会在开头包含一些头文件,如:#include<stdio.h>,那么这些库文件,头文件在哪呢? 库文件:在vs2008安装目录中可以找到,如:我vs2008安装在D:\Program Files中,那么文件的位置是: D:\Program Files\Microsoft Visual Studio 9.0\VC\crt\src   头文件:vs2008安装目录的一个include文件夹中,我的位置是: D:\Program Files\Microsoft Visual Studio 9.0\VC\include
整理自:《C Primer Plus》第五版   此程序包含三个文件:   diceroll.cpp :包含两个函数 rollem(int)和roll_n_dice(int,int)   diceroll.h :头文件   manydice.cpp :主函数所在文件   diceroll.cpp文件:   //掷骰子的模拟程序 #include "diceroll.h" #include<stdio.h> #include<stdlib.h> //为rand()函数提供类库 int roll_count = 0; //外 ...
 源自:《C Primer Plus》第五版p335 在这个随机函数使用了一个具有内部链接的静态变量。ANSI C程序库提供了rand()函数来产生随机数。有多种产生随机数的算法,ANSI C标准允许C实现使用针对特定机器的最佳算法,不过,ANSI C也提供了一个可移植的标准算法,可以在不同系统中产生随机数。事实上,rand()是一个”伪随机数发生器“,这意味着可以预测数字的实际顺序(计算机不具有自发性),但这些数字在可能的取值范围内均匀分布。   s_and_r.cpp程序   /*s_and_r -- 包含函数rand1()和srand1()*/ /* 使用ANSI C ...
     在编写处理诸如int这样基本类型的函数时,可向函数传递int数值,也可传递int型的指针,通常我们直接传递数值;只用在需要在函数中改值时,我们才传递指针。      对于处理数组的函数,只能传递指针,这样可使程序的效率更高。      如果通过值向函数传递数组,则函数中必须分配足够存放一份原数组的拷贝的存储空间,然后把原数组的所用数据复制到这个新数组中。如果简单的把数组的地址传递给函数,然后让函数直接读写原数组,程序的效率会更高.      然而这种技术也会带来一些问题。通常C传递数据的值,其原因是要保证原始数据的完整性。函数使用原始数据的拷贝,这样就不会意外的修改原始数据。但是 ...
Global site tag (gtag.js) - Google Analytics