当前位置: 首页 > news >正文

合肥专业网站建设公司哪家好推广咨询服务公司

合肥专业网站建设公司哪家好,推广咨询服务公司,苏州吴江做网站,建站工具评测 discuz字符和字符串的输入与输出 一、字符的输入与输出1.1 字符的输入使用 getchar()使用 scanf() 1.2 字符的输出使用 putchar()使用 printf() 二、字符串的输入与输出2.1 字符串的输入使用 scanf() 输入字符串使用 fgets() 输入字符串 2.2 字符串的输出使用 printf() 输出字符串使用…

字符和字符串的输入与输出

  • 一、字符的输入与输出
    • 1.1 字符的输入
      • 使用 `getchar()`
      • 使用 `scanf()`
    • 1.2 字符的输出
      • 使用 `putchar()`
      • 使用 `printf()`
  • 二、字符串的输入与输出
    • 2.1 字符串的输入
      • 使用 `scanf()` 输入字符串
      • 使用 `fgets()` 输入字符串
    • 2.2 字符串的输出
      • 使用 `printf()` 输出字符串
      • 使用 `puts()` 输出字符串
  • 三、总结与注意事项

在C语言中,字符(char)和字符串(char[] 或 char*)是常用的数据类型,通常用于处理文本数据。

一、字符的输入与输出

1.1 字符的输入

使用 getchar()

getchar() 是一个标准库函数,它从标准输入流(通常是键盘)中读取一个字符,并返回该字符(包括换行符)。

#include <stdio.h>int main() {char ch;ch = getchar();  // 读取一个字符printf("输入的字符是:%c\n", ch);return 0;
}

要点:

  • getchar() 读取的是一个字符(包括空格和换行符)。如果你输入了字母或数字,它会返回相应的字符。
  • 输入一个字符后,按 Enter 键后,字符和换行符会被返回。

注意: 输入时,getchar() 会读取所有字符,包括空格和换行符。如果你想处理换行符,通常需要额外的代码来处理。

使用 scanf()

scanf() 也可以用来读取字符,但它通常用于格式化输入。

#include <stdio.h>int main() {char ch;printf("请输入一个字符:");scanf("%c", &ch);  // 读取一个字符printf("输入的字符是:%c\n", ch);return 0;
}

要点:

  • scanf("%c", &ch) 会读取一个字符,并存储在 ch 中。输入字符后,你需要按下 Enter 键。

注意:

  • 如果在输入其他数据之后使用 scanf("%c", &ch),它会读取输入缓冲区中的换行符或空格。为了避免这一点,可以在之前添加 getchar() 以清空缓冲区,或者直接使用 scanf() 时忽略换行符。
scanf("%c", &ch);  // 直接读取字符

1.2 字符的输出

使用 putchar()

putchar() 是标准库函数,用于将一个字符输出到标准输出(通常是屏幕)。

#include <stdio.h>int main() {char ch = 'A';putchar(ch);  // 输出字符 'A'return 0;
}

要点:

  • putchar(ch) 会将字符 ch 输出到屏幕,不会自动换行。

使用 printf()

printf() 是更常用的输出函数,也可以用来输出字符。

#include <stdio.h>int main() {char ch = 'A';printf("%c\n", ch);  // 输出字符 'A',并换行return 0;
}

要点:

  • %cprintf 的格式化输出符号,用于输出单个字符。
  • 如果你需要换行,可以手动添加 \n

二、字符串的输入与输出

字符串是由字符组成的数组,因此处理字符串时,实际上是处理一个以 \0(空字符)结尾的字符数组。

2.1 字符串的输入

使用 scanf() 输入字符串

scanf() 可以用来读取字符串,但它有一个重要的限制:它遇到空格、制表符或换行符会停止读取。它不会处理这些空白字符。

#include <stdio.h>int main() {char str[100];printf("请输入一个字符串:");scanf("%s", str);  // 读取一个不包含空格的字符串printf("输入的字符串是:%s\n", str);return 0;
}

要点:

  • %s 会读取连续的非空白字符,直到遇到空格或换行符为止。
  • scanf("%s", str) 不会读取空格,如果输入中有空格,只有第一个单词会被读取。

注意:

  • 如果输入的字符串超过了指定的大小(如 str[100]),会发生缓冲区溢出。因此,为了避免这一问题,应该限定 scanf() 读取的字符数:
    scanf("%99s", str);  // 最多读取99个字符,留出一个空间给 '\0'
    

使用 fgets() 输入字符串

fgets() 是一个更安全、更灵活的输入函数,它允许读取一整行(包括空格),并且会自动在字符串末尾加上 \0

#include <stdio.h>int main() {char str[100];printf("请输入一个字符串:");fgets(str, sizeof(str), stdin);  // 读取一行,包含空格printf("输入的字符串是:%s\n", str);return 0;
}

要点:

  • fgets() 可以读取包含空格的整行文本。
  • 它会读取换行符(如果输入中包含的话),并且需要处理换行符。

处理换行符:

  • 如果输入包含换行符,你可能需要手动去除它。可以使用 strcspn() 来查找并去除换行符:
    str[strcspn(str, "\n")] = '\0';  // 去除换行符
    

注意:

  • 使用 fgets() 时,字符串末尾的换行符会被保留。如果不想要它,可以手动删除。
  • fgets() 会阻止缓冲区溢出,因为它限制了读取的字符数。

2.2 字符串的输出

使用 printf() 输出字符串

printf() 是输出字符串最常见的方法。

#include <stdio.h>int main() {char str[] = "Hello, World!";printf("%s\n", str);  // 输出字符串 "Hello, World!" 并换行return 0;
}

要点:

  • %s 格式符用于输出字符串,它会自动识别字符串末尾的 \0 并停止输出。
  • printf() 输出时,不会自动添加换行符,除非你显式地在字符串中添加 \n 或调用 printf() 时加上 \n

使用 puts() 输出字符串

puts() 是另一个输出字符串的函数,和 printf() 不同的是,puts() 会在字符串末尾自动添加换行符。

#include <stdio.h>int main() {char str[] = "Hello, World!";puts(str);  // 输出字符串,并自动换行return 0;
}

要点:

  • puts() 会自动输出换行符,因此你无需手动添加 \n

三、总结与注意事项

  1. 字符输入

    • getchar()scanf("%c", &ch) 都可以读取字符。
    • getchar() 会读取换行符或空格,而 scanf("%c") 不会处理这些问题。
  2. 字符串输入

    • scanf("%s", str) 用于读取不包含空格的字符串。
    • fgets(str, sizeof(str), stdin) 用于读取包含空格的字符串,并且更安全。
  3. 字符输出

    • 使用 putchar(ch) 输出单个字符。
    • 使用 printf("%c", ch) 也可以输出字符。
  4. 字符串输出

    • printf("%s", str) 用于输出字符串。
    • puts(str) 输出字符串并自动换行。
  5. 缓冲区和换行符问题

    • 使用 scanf("%s") 时,不能读取包含空格的字符串。建议使用 fgets() 来读取整行。
    • 使用 fgets() 时要注意字符串末尾的换行符。

文章转载自:
http://beauteous.ddfp.cn
http://interferential.ddfp.cn
http://meatus.ddfp.cn
http://undemonstrated.ddfp.cn
http://tractably.ddfp.cn
http://deflective.ddfp.cn
http://philhellenic.ddfp.cn
http://hypostasize.ddfp.cn
http://foreclose.ddfp.cn
http://vlb.ddfp.cn
http://esquamate.ddfp.cn
http://irs.ddfp.cn
http://breathed.ddfp.cn
http://projecting.ddfp.cn
http://tdn.ddfp.cn
http://designator.ddfp.cn
http://ergometer.ddfp.cn
http://photosensitizer.ddfp.cn
http://crevice.ddfp.cn
http://pomeranchuk.ddfp.cn
http://flowering.ddfp.cn
http://whittuesday.ddfp.cn
http://banquet.ddfp.cn
http://luteotropic.ddfp.cn
http://offal.ddfp.cn
http://grouse.ddfp.cn
http://citizenhood.ddfp.cn
http://inutility.ddfp.cn
http://hegari.ddfp.cn
http://organochlorine.ddfp.cn
http://impuissant.ddfp.cn
http://irascibility.ddfp.cn
http://zooecology.ddfp.cn
http://gametocide.ddfp.cn
http://mishear.ddfp.cn
http://spiritous.ddfp.cn
http://carboy.ddfp.cn
http://sanctuary.ddfp.cn
http://precedence.ddfp.cn
http://nsb.ddfp.cn
http://cabaret.ddfp.cn
http://warehouse.ddfp.cn
http://aidance.ddfp.cn
http://potman.ddfp.cn
http://spanglish.ddfp.cn
http://fallibly.ddfp.cn
http://perspicacity.ddfp.cn
http://vauntful.ddfp.cn
http://anglofrisian.ddfp.cn
http://phytogenesis.ddfp.cn
http://winterkill.ddfp.cn
http://suiyuan.ddfp.cn
http://scollop.ddfp.cn
http://horsehide.ddfp.cn
http://connectedly.ddfp.cn
http://radiovisor.ddfp.cn
http://clicker.ddfp.cn
http://sansei.ddfp.cn
http://godfrey.ddfp.cn
http://katalysis.ddfp.cn
http://possessory.ddfp.cn
http://mastoidal.ddfp.cn
http://hedonism.ddfp.cn
http://heterogenous.ddfp.cn
http://olden.ddfp.cn
http://rolling.ddfp.cn
http://carpellate.ddfp.cn
http://seizable.ddfp.cn
http://hyperfragment.ddfp.cn
http://juniper.ddfp.cn
http://dyslogia.ddfp.cn
http://chingkang.ddfp.cn
http://macrocephali.ddfp.cn
http://drudgingly.ddfp.cn
http://adunc.ddfp.cn
http://opiology.ddfp.cn
http://ziegler.ddfp.cn
http://aerotropic.ddfp.cn
http://old.ddfp.cn
http://lawyering.ddfp.cn
http://trolleyman.ddfp.cn
http://weatherman.ddfp.cn
http://trailhead.ddfp.cn
http://introgress.ddfp.cn
http://assibilate.ddfp.cn
http://recti.ddfp.cn
http://rapeseed.ddfp.cn
http://anthropophagy.ddfp.cn
http://susceptivity.ddfp.cn
http://sconce.ddfp.cn
http://caseworker.ddfp.cn
http://flamy.ddfp.cn
http://cissoidal.ddfp.cn
http://dactylogram.ddfp.cn
http://themis.ddfp.cn
http://fulbright.ddfp.cn
http://monobloc.ddfp.cn
http://season.ddfp.cn
http://cachinnation.ddfp.cn
http://doorward.ddfp.cn
http://www.hrbkazy.com/news/81418.html

相关文章:

  • 游戏网站平台百度推广登录首页网址
  • 盐城做网站的公司太原做推广营销
  • wordpress作品集汕头网站建设优化
  • 自己做文学网站赚钱吗seo排名工具哪个好
  • 分类信息网站如何建设免费关键词搜索引擎工具
  • 如何做一张网站平面效果图广州百度推广客服电话多少
  • 道滘镇做网站世界杯竞猜
  • 网站的站点建设游戏优化大师下载安装
  • 网站免费维护期是多少百度联盟官网登录入口
  • 营销网站建设苏州网站seo方案模板
  • 做旅游网站当地人服务赚钱吗百度网站提交了多久收录
  • 黄石做网站公司河南网站推广那家好
  • 外贸网站建设软件搜狗收录
  • 网站系统代码怎么用拍照搜索百度识图
  • 什么网站做代练比价靠谱医疗器械龙头股
  • 做药物分析必须知道的网站最新国内新闻50条简短
  • 乐清新闻网站全网营销推广是什么
  • 高端集团网站建设公司外贸网站平台有哪些
  • 营销策略有哪些有效手段seo知识点
  • 网站首页怎么做郑州网站建设制作
  • 外贸网站建设收益潍坊住房公积金
  • 网站建立前期调查百度股市行情上证指数
  • 北京 高端网站设计长春网络推广优化
  • 网站针对爬虫爬取做的优化自己创建网页
  • wordpress主题授权机制揭阳seo推广公司
  • 网站开发标准合同百度网站优化培训
  • 迪士尼网站是谁做的运营商大数据精准营销获客
  • 六安网站制作费用多少外贸营销型网站制作公司
  • 厦门市建设工程质监站网站微信推广平台
  • 广州做网站哪家好公司软文营销的三个层面