C语言如何输入输出一个字符串

c/c++ 专栏收录该内容
2 篇文章 0 订阅

C语言习题中,经常遇到字符串的输入输出,我们在这里简单总结一下字符串的输入输出方式。

C语言中用一般用数组来处理字符串,这里暂时讨论一维数组的输入输出,二维之后再加上。
定义:char 数组名[常量]
输入输出:我们可用scanf&&printf或者字符串处理函数来输入输出,处理逐个字符用%c,整个字符串用%s。

一 scanf&&printf

I. 逐个字符的处理
以’.'来表示字符串的结束。

#include<stdio.h> 
int main(){
  	char s[10],i=0;
  	scanf("%c",s);  
  	while(s[i]!='.'){
  	scanf("%c",&s[++i]);
  	}
  	i=0;
  	while(s[i]!='.'){
  	printf("%c",s[i++]);
  	}
  	printf("%c",s[i++]);
  	return 0;
}
```

优点:可以接受含有空格和回车的字符串。
II. 整个字符串的输入输出

#include<stdio.h>
int main(){
 	char s[10];
 	scanf("%s",s);  //or scanf("%s")
 	printf("%s",s);
 	return 0;
 }

优点:简洁方便;
缺点:不能接受含有空格的字符串。

二 字符串处理函数<stdio.h>

I. 逐个字符的处理

#include<stdio.h>
#include<string.h>
int main(){
 	char s[10];
 	int i=0;
 	s[i]=getchar();
 	while(s[i]!='.'){
  	s[++i]=getchar();
 	}
 	i=0;
 	while(s[i]!='.'){
  	putchar(s[i++]);
 	}
	putchar(s[i]);
	return 0;
}

优点:可以接受含有空格和回车的字符串。
II. 整个字符串的输入输出

#include<stdio.h>
#include<string.h>
int main(){
 	char s[10];
 	gets(s);
 	puts(s);
 	return 0;
}

优点:简洁方便,也可以接受含有其他特殊字符的输入输出,如空格,回车等。推荐使用

<h4 style="font-weight:500;font-size:1.5rem;font-family:'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif;color:#222226;background-color:#ffffff;text-align:center;"> <span style="font-size:14px;">期末</span><span style="font-size:14px;background-color:#fbeeb8;">考点</span><span style="font-size:14px;">都对应</span><span style="font-size:14px;background-color:#fbeeb8;">详解视频</span><span style="font-size:14px;">,</span><span style="font-size:14px;"><span style="color:#e03e2d;">基础阶段</span></span><span style="font-size:14px;">内容全面,语言通俗易懂(翻译书中的语言为</span><span style="font-size:14px;background-color:#fbeeb8;">人话)</span><span style="font-size:14px;">,</span> </h4> <h4 style="font-weight:500;font-size:1.5rem;font-family:'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif;color:#222226;background-color:#ffffff;text-align:center;"> <span style="font-size:14px;">老师精心研究</span><span style="font-size:14px;background-color:#fbeeb8;">百份</span><span style="font-size:14px;">考卷,总结每一个考点,同时结合你肯定可以听懂的骚话,</span> </h4> <h4 style="font-weight:500;font-size:1.5rem;font-family:'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif;color:#222226;background-color:#ffffff;text-align:center;"> <span style="font-size:14px;background-color:#fbeeb8;">扫清你的数据库系统盲区</span> </h4> <h4 style="font-weight:500;font-size:1.5rem;font-family:'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif;color:#222226;background-color:#ffffff;text-align:center;"> <span style="font-size:14px;"><span style="color:#e03e2d;">真题阶段</span></span><span style="font-size:14px;">为你提供</span><span style="font-size:14px;background-color:#fbeeb8;">解题思路</span><span style="font-size:14px;">,培养你的</span><span style="font-size:14px;background-color:#fbeeb8;">解题思维</span><span style="font-size:14px;">,同时</span><span style="font-size:14px;background-color:#fbeeb8;">点明考点</span><span style="font-size:14px;">,结合文档进行重点解读,加深你的印象.</span> </h4> <h4 style="font-weight:500;font-size:1.5rem;font-family:'PingFang SC', 'Hiragino Sans GB', Arial, 'Microsoft YaHei', Verdana, Roboto, Noto, 'Helvetica Neue', sans-serif;color:#222226;background-color:#ffffff;text-align:center;"> <span style="font-size:14px;color:#3598db;">只为你的高分,我们交个朋友!让每位学生都可以学的起!!</span> </h4> <p> <span style="font-size:14px;color:#3598db;"><img src="https://img-bss.csdnimg.cn/202103040423318088.png" alt="" width="788" height="450" /></span> </p>
©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值