c语言输出一个字符串
⑴ c语言:字符串输入与输出
#include
<stdio.h>
int
main()
{
char
str1[21]
=
{0},
str2[21]
=
{0},
str3[21]
=
{0};
//
getchar实现
printf("请输入一个长度不超过20的字符串(getchar实现):");
int
c
=
0,
i
=
0;
while
((c
=
getchar())
!=
'\n')
{
str1[i++]
=
c;
}
//
scanf实现
printf("请输入一个长度不超过20的字符串(scanf实现):");
scanf("%s",
str2);
getchar();
//
取走缓冲区的换行符
//
gets实现
printf("请输入一个长度不超过20的字符串(gets实现):");
gets(str3);
//
putchar输出
printf("putchar输出:");
i
=
0;
while
(str1[i]
!=
'\0')
{
putchar(str1[i++]);
}
//
printf输出
printf("\nprintf输出:");
printf("%s\n",
str2);
//
puts输出
printf("puts输出:");
puts(str3);
printf("\n");
return
0;
}
问题答案:
1.
getchar可以根据用户自定义的字符结束输入,不受换行符和空白字符的限制
2.
scanf不能输入空格,另外两个可以
3.
在保证数据不会超出内存范围的情况下,用gets和puts最方便
不存在空白字符的情况下,用scanf最方便
如果既有空白字符,又可能越界的情况下,getchar最方便
⑵ C语言输入输出字符串
在C语言中,输入输出字符串有以下两种方式:
1
用scanf/printf输入输出。
scanf/printf是C语言的格式化输入输出函数,可以用于输入输出各种基础类型,字符串(char*)也在其支持范围内。
格式化字符为%s。
定义
char
str[100];
输入
scanf("%s",str);
输出
printf("%s",str);
2
C语言还支持专门的字符串输入输出函数:gets/puts。
gets的作用为,读入一行输入,并将读到的换行符替换为字符串结束符。
puts的作用为,将字符串单行输出,即输出字符串内容后,会自动在结尾增加换行。
定义
char
str[100];
输入
gets(str);
输出
puts(str);
⑶ C语言上中怎么样直接输入输出一个字符串
C语言中字符串的输入和输出主要有两种方式:
输入使用:scanf("%s",a);对应的输出使用:printf("%s ",a);
输入使用:gets(b);对应的输出使用:puts(b);
⑷ C语言输入输出字符串
char ch[5]表示的是定义了一个字符数组(即字符串),数组单元有5个,每个单元都是字符型,由于字符串是用\0作结束的,5个单元的字符数组实际上能完整存储的只能是长度不超过4个字符的字符串,多了的话就要占用其他单元了(这些单元有可能会被系统分配给其他变量,而能够用来存储字符串的就是你定义的这5个单元的字符数组),可能会出现溢出,也就是有时候会出现输出的字符串后面有乱码
char ch表示定义了一个字符变量,用scanf为其赋值的话应该用%c,即scanf("%c",&ch),它只能表示一个字符
char ch[]数组定义不允许[]里为空
char ch[1]表示的也是一个字符数组,所以你可以输入字符串,同样随便输入就有可能溢出
⑸ C语言字符串输出
因为上一步是--i,最后一步的时候i为4,因为*p=s+3在数组里面是按照0.1.2.3这样计算的,也就是四位数,所以最后一步输出的p-i就回到了数组的开始,输出就是1234567890
⑹ C语言怎么用printf输出字符串。
void main()
{
unsigned char *x = "ab,sdf,sad,23432,cc";
data = x;
printf("data = %c ", *data);
printf("data = %s ", data);
system("pause");
}
(6)c语言输出一个字符串扩展阅读:
printf输出字符串的一些格式
1、原样输出字符串:printf("%s", str);
2、输出指定长度的字符串, 超长时不截断, 不足时右对齐:printf("%Ns", str);
注:N 为指定长度的10进制数值
3、输出指定长度的字符串, 超长时不截断, 不足时左对齐:printf("%-Ns", str);
注:N 为指定长度的10进制数值
4、输出指定长度的字符串, 超长时截断, 不足时右对齐:printf("%N.Ms", str);
注:N 为最终的字符串输出长度
M 为从参数字符串中取出的子串长度
5、输出指定长度的字符串, 超长时截断, 不足时左对齐是:printf("%-N.Ms", str);
注:N 为最终的字符串输出长度
M 为从参数字符串中取出的子串长度
参考资料来源:printf-网络
⑺ C语言输入输出字符串
在C语言中,输入输出字符串有以下两种方式:
1
用scanf/printf输入输出。
scanf/printf是C语言的格式化输入输出函数,可以用于输入输出各种基础类型,字符串(char*)也在其支持范围内。
格式化字符为%s。
定义
char
str[100];
输入
scanf("%s",str);
输出
printf("%s",str);
2
C语言还支持专门的字符串输入输出函数:gets/puts。
gets的作用为,读入一行输入,并将读到的换行符替换为字符串结束符。
puts的作用为,将字符串单行输出,即输出字符串内容后,会自动在结尾增加换行。
定义
char
str[100];
输入
gets(str);
输出
puts(str);
⑻ c语言问题:输入输出一个字符串,出错处在哪里
c语言中字符串的输入和输出主要有两种方式:
1.
输入使用:scanf("%s",a);对应的输出使用:printf("%s\n",a);
2.
输入使用:gets(b);对应的输出使用:puts(b);
参考代码:
#include
int main()
{
char a[100],b[100];
scanf("%s",a);//方法一
printf("%s\n\n",a);
getchar();//吸收空格
gets(b);//方法二
puts(b);
return 0;
}
/*
运行结果:
123
123
456
456
*/
⑼ c语言中如何输入输出字符串
在<string.h>头文件中用字符串处理函数输入和输出,gest用来输入,puts用来输出。
字符串输入函数gets,从键盘键入以回车结束的字符串放入字符数组中,并自动加’ '。输入串长度应小于字符数组维数,字符串中可以包含空格。
字符串输出函数puts,向显示器输出字符串(输出完,自动换行,即用' '替'