1.一般的输入输出
(1)
#include<stdio.h>
#define N 10
int main()
{
char a[N];
gets(a);//输入
puts(a);//输出
}
(2)
include<stdio.h>
#define N 20
int main()
{
char a[N];
scanf("%s", a);
printf("%s", a);
}
2.用数组的方式输入输出字符串
#include<stdio.h>
#define N 20
int main()
{
char a[N];//最大输入个数N
int n;//输入字符想输入的个数
scanf("%d", &n);
for (int i = 0; i<n; i++)
scanf("%c", &a[i]);
for (int i = 0; i<n; i++)
printf("%c", a[i]);
}
3.指针输入输出字符串
(1)
#include<stdio.h>
#define N 20
int main()
{
char a[N];
gets_s(a);
char* p = a;//取得a的地址
printf("%s", p);//注意这里是整个字符串输出,应该为p,不是*p
return 0;
}
(2)
#include<stdio.h>
#define N 20
int main()
{
char a[N];
char* p = a;
int i = 0;
for (; i<N; i++)
scanf("%c", p+i);
for (; *p != '\0'; p++)
printf("%c", *p);
return 0;
}
指针是指向字符串的第一个字符,然后引出下面的字符。所以不可以用gets(p)或者puts(*p)的方式来输入输出