基础知识:
1.scanf的读取规则有"默认读取到空格结束"
解决方法:scanf("%[^n]",arr); 作用:“读取到换行结束”
2.对字符串常用gets,puts
gets()读取字符串包括空格
put(x)相当于printf("%sn", x) 比正常printf会多一个换行
3.字符数组和字符串的区别(有无 )
例1:char s1[3]={'a','b','c'},s2[4]={'a','b','c','0'};
s1,s2都为字符数组,但是s2同时也是字符串。
4.初始化规则:
char str[1000]=''abdce'' --------默认后面加 (即字符串)
5.两种打印字符数组的方式(1.遍历%c 2.直接打印%s)
例:
代码语言:javascript复制#include<stdio.h>
int main()
{
char arr1[4], arr2[5];
scanf("%s", arr1);//&arr1[]
//方式1(一个一个出来)
int i = 0;
for (i = 0; i < 4; i )
{
printf("%c", arr1[i]);
}
printf("n");
//方式2(一整个出来)
printf("%s", arr1);
}
输出结果:
———————————————————————————————————————————
题目:将一个字符串str的内容倒过来
代码语言:javascript复制#include<stdio.h>
#include<string.h>
int main()
{
char arr1[10000] = { 0 };
scanf("%[^n]", arr1);
int len = strlen(arr1);
int left = 0;
int right = len - 1;
while (left < right)
{
char tmp = arr1[left];
arr1[left] = arr1[right];
arr1[right] = tmp;
left ;
right--;
}
printf("%sn", arr1);
return 0;
}