1.一般的输入输出
(1)
#include<stdio.h>#define N 10int main(){char a[N];gets(a);//输入puts(a);//输出}
(2)
include<stdio.h>#define N 20int main(){char a[N];scanf("%s", a);printf("%s", a);}
2.用数组的方式输入输出字符串
#include<stdio.h>#define N 20int main(){char a[N];//最大输入个数Nint 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 20int main(){char a[N];gets_s(a);char* p = a;//取得a的地址printf("%s", p);//注意这里是整个字符串输出,应该为p,不是*preturn 0;}
(2)
#include<stdio.h>#define N 20int 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)的方式来输入输出