c语言字符串打印
Ⅰ 在c语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中实现用键盘输入一个字符串,并打印出来的解决方法如下:
1、首先定义一个字符串数组,如你可以给字符串100个数组空间。如图括号内数字即为你定义的数组大小。
(1)c语言字符串打印扩展阅读:
字符数组的输出:
(1)用putchar()或printf()的‘%c’格式符对数组进行字符赋值。例如,对于数组a[10]:用putchar()赋值:
for(i=0;i<10;i++)
a[i]=putchar();
用printf()赋值:
for(i=0;i<10;i++)
printf("%c",a[i]);
输出结果为:
c program[2]
(2)用printf()的'%s'格式对数组赋值。还是对于数组a[10];
printf("%s",a);
输出结果为:
c program
参考资料来源:
网络-char
网络-字符数组
Ⅱ C语言输入输出字符串
char ch[5]表示的是定义了一个字符数组(即字符串),数组单元有5个,每个单元都是字符型,由于字符串是用\0作结束的,5个单元的字符数组实际上能完整存储的只能是长度不超过4个字符的字符串,多了的话就要占用其他单元了(这些单元有可能会被系统分配给其他变量,而能够用来存储字符串的就是你定义的这5个单元的字符数组),可能会出现溢出,也就是有时候会出现输出的字符串后面有乱码
char ch表示定义了一个字符变量,用scanf为其赋值的话应该用%c,即scanf("%c",&ch),它只能表示一个字符
char ch[]数组定义不允许[]里为空
char ch[1]表示的也是一个字符数组,所以你可以输入字符串,同样随便输入就有可能溢出
Ⅲ 怎么用C语言输出字符串
最基本的实现有三种,高级实现技巧不说。
第一种:
printf("%s",strSrc);
第二种:
puts(strSrc);
第三种:(或者用while,原理一样)
inti;
for(i=0;i<strlen(strSrc);i++)
printf("%c",strSrc[i]);
看情况选取使用。
Ⅳ C语言中%s输出字符串怎么用
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
Ⅳ C语言打印字符串的一部分的方法
你现在要使用的是printf()函数,而不是sprintf()函数。请看下例:
#
include
#
include
void
main
(void);
void
main
(void)
{
char
*
source_str
=
"THIS
IS
THE
SOURCE
STRING"
;
/
*
Use
printfO
to
print
the
first
11
characters
of
source_str.
*
/
printf("First
11
characters:
'
%11.
lls'\n"
,
source_str);
/
*
Use
printf()
to
print
only
the
last
13
characters
of
source
_str.
*
/
printf("Last
13
characters:'%13.13'\n",
source_str+(strlen(source_str)-13));
}
上例的打印输出如下所示:
First
11
characters:
'THIS
IS
THE'
Last
13
characters:'SOURCE
STRING'
在上例中,第一次调用printf()函数时,通过指定参数"%11.11s",迫使printf()函数只打印11个字符的长度,因为源字符串的长度大于11个字符,所以在打印时源字符串将被截掉一部分,只有头11个字符被打印出来。第二次调用printf()函数时,它将源字符串的最后13个字符打印出来,其实现过程为:
(1)用strlen()函数计算出source_str字符串的长度,即strlen(source_str)。
(2)将source_str的长度减去13(13是将要打印的字符数),得出source_str中剩余字符数,且pstrlen(source_str)-13。
(3)将strlen(source_str)-13和source_str的地址相加,得出指向source_str中倒数第13个字符的地址的指针;即source_str+(strlen(source_str)-13)。这个指针就是printf()函数的第二个参数。
(4)通过指定参数“%13.13s”,迫使printf()函数只打印13个字符的长度,其结果实际上就是打印源字符串的最后13个字符。
Ⅵ 关于C语言中printf输出字符串的问题!
因为a和b没有字符串的结束符号'\0'
所以
"chi"是会输出的,但后面再输出什么,就不得而知了
"na"也会输出的,但它后面再输出什么,也不得而知了
你这种输出结果,只是很多中不可预期的输出里面的一种情况而已
Ⅶ C语言怎么用printf输出字符串。
void main()
{
unsigned char *x = "ab,sdf,sad,23432,cc";
data = x;
printf("data = %c ", *data);
printf("data = %s ", data);
system("pause");
}
(7)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语言 想用函数打印一串字符串
可以通过for循环来打印指定长度的字符(也即字符串的一部分)。 下面通过实例来说明具体的操作步骤: char *str="abcdefg"; // 定义一个字符串指针int i;for(i=2; i<5; i++) // 控制需要输出字符串的起始位置(下标从0开始){ printf("%c", *(str+i)); // 以字符的形式输出,输出cde}