字符输入与输出

1.随机数产生函数rand和srand:rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数 值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。

字符串输入

1.gets函数:gets没有解决缓冲区溢出的问题   gets(variable);

  • 他不检查预留存储区是否能够容纳实际输入的数据。多出来的字符简单的溢出到相邻的内存区。
  • 读字符串直到遇到一个换行字符\n就结束输入,按回车键产生。在读取换行符之前的所有字符时会在这些字符后添加一个空字符\0。

2.fgets函数   fgets(variable,MAX,stdin);

  • 第二个参数MAX表示最大读入字符数。如果这个参数为n,fgets()就会读取n-1个字符或者读完一个换行符为止,由这两者最先满足的那个来结束输入。
  • )第三个参数表示读哪一个文件。从键盘上读取数据时,可以使用stdin(standard input)作为该参数,这个标识符在stdio.h中定义。
  • 能让使用者指定最大读入字符数。fgets是为了I/O而设计的。
  • 不检查预留缓冲区是否能够容纳用户实际输入的数据。多出来的字符会导致内存溢出,fgets函数改进了这个问题。
  • 由于fgets函数是为读取文件设计的,所以读取键盘是没有gets那么方便。
  • fgets读取到换行符,会把它存储在字符串里,而不像gets()那样丢弃它。

3.scanf函数

  • scanf()函数与gets()函数最大的差别是它们如何决定字符串合适结束。
  • scanf()读取单词,gets所有的字符。
  • 如果设置了宽度,如%10s,scanf()就会读入十个字符或者遇到第一个空白字符。

字符串的输入

1.puts函数  只需要给出字符串参数的地址就行。

  • char str1[];    char *str2;           puts(str1);   puts(str2);

2.fputs()函数

  • fputs()需要第二个参数来说明要写的文件。可以使用stdout(代表standard output)作为参数来进行输出显示,stdout在stdio.h中定义。
  • 与puts()不同的是,fputs ()并不为输出自动添加换行符。
  • fputs(line,stdout)
时间: 2024-10-13 17:43:47

字符输入与输出的相关文章

第三章 基本数据类型

数据类型: 1. 基本数据类型 整型: 基本整型int 短整型short 长整型long 字符型char 浮点型(实型): 单精度型float 双精度型double 2. 构造类型 数组类型 结构体类型struct 共用体类型union 枚举类型enum 3. 指针类型 4.空类型 void 整型变量: [signed] int -32 768~32 767(16位系统); -2 147 483 648~2 147 483 647(32位系统); unsigned [int] 0~65 535(

python unicode

Python.org 首先感谢python完善的文档,文档从1968年 the American Standard Code (ASCII)开始讲述. print(type(response)) print(type(response['ERRORCODE'])) print(type(response['RESULT'])) 类型分别如下: <type 'dict'> <type 'unicode'> <type 'unicode'> 字典类型(以后把这个栗子再完善点

《C Primer Plus(第6版)(中文版)》普拉达(作者)epub+mobi+azw3

内容简介 <C Primer Plus(第6版)中文版>详细讲解了C语言的基本概念和编程技巧. <C Primer Plus(第6版)中文版>共17章.第1.2章介绍了C语言编程的预备知识.第3~15章详细讲解了C语言的相关知识,包括数据类型.格式化输入/输出.运算符.表达式.语句.循环.字符输入和输出.函数.数组和指针.字符和字符串函数.内存管理.文件输入输出.结构.位操作等.第16章.17章介绍C预处理器.C库和高级数据表示.本书以完整的程序为例,讲解C语言的知识要点和注意事项

Java IO文件流

package com.zb.io.test; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.F

C语言 &#183; 复习杂记

/*=================================*/ /* 基础部分 */ /*=================================*/一:.CPP--C++文件:.C--C文件 二:C语言中浮点型一般分为float单精度型.double双精度型.long double长精度型,单精度浮点型小数点后面有效数字为6~7位和双精度浮点型小数点后面有效数字为15~16位 三:char s[N]--for(int i=0;s[i];i++):可以用s[i]进行循环.

本地化和国际化测试

如果你是一个有竞争力的软件测试员,并且熟练掌握除英语之外的一门外语,你就有了很有价值的技能. 1.使文字和图片有意义 软件的国际化 除了语言,还需要考虑地域(region或locale)——用户的国家和地理位置. 使软件适应特定地域特征,照顾到语言.方言.地区习俗和文化的过程称为本地化(localization)或国际化(internationalization).测试此类软件称为本地化测试. 2.翻译问题 尽管翻译只是整个本地化工作的一部分,但是从测试角度看这是重要的一环,最明显的问题是如何测

java学习笔记--1_常见输入输出语句熟悉篇章

今天上oj,想来是准备做做算法和数据结构的.看了看以前做的基础题目,想着就先熟悉一下java的语言吧! 以下是今天做的10道题目. 备注:oj有时候对格式要求非常严格,因为不在格式上纠结太久,只要eclipse编译出来正确的结果.我就直接跳过了! 一下是题目及代码: 1001 Hello World! 1 Hello World! 2 3 Time Limit: 200/100 MS (Java/Others) Memory Limit: 32768/5000 K (Java/Others) 4

java之十 高级IO流

java.io定义的输入/输出类列于下表: ObjectInputStream.GetField和ObjectOutputStream.PutField是Java2新添的内部类. java.io包还包含两个不受java2欢迎的类,这两个类没有在上表中列出:LineNumberInputStream和StringBufferInputStream.新代码不应该使用两个类. 下面是由java.io定义的接口: FileFilter接口是Java2新增的. java.io包中有很多类和接口.包括字节和

一起读经典《C Primer Plus(第6版)中文版》

点击关注 异步图书,置顶公众号 每天与你分享 IT好书 技术干货 职场知识 参与文末话题讨论,每日赠送异步图书 --异步小编 今天我们要读的是一本经久不衰的C语言畅销经典教程,自1984年第一版诞生以来,它持续畅销了34年,升级了6个版本,是程序员们学习C语言不可多得的良师益友,它就是<C Primer Plus(第6版)中文版>. 1.   C语言的历史和变革 提到C语言,就绕不开计算机编程语言的演变与进化.这足以证明C语言在整个编程领域举足轻重的地位.C语言不是凭空出现的,它的背后总是伴随