1. scanf/printf+%s

  2. getchar()/putchar() 前者不带参数后者带

  3. gets()/puts() 二者都带参数,为一维字符数组或二维字符数组的一维

  4. 运用指针+scanf/printf或getchar/putchar

#include<cstdio>
//字符数组的3种输入输出方式

int main(){
	
//1.scanf/printf+%s
	char str_1[50];
	printf("%s","请输入第一个字符串:\n");
	scanf("%s",str_1);//以空格或换行识别一个字符串的结束 
	printf("%s","第一个字符串的内容为:\n");
	printf("%s\n",str_1);

//2.getchar()/putchar() 
	char str_2[100];
	printf("%s","请输入第二个字符串:\n");
	for(int i=0;i<=30;i++){
		str_2[i]=getchar();
	}
	printf("%s","第二个字符串的内容为:\n");
	for(int j=0;j<=30;j++){
		putchar(str_2[j]);
	}
	printf("\n");
	
//3.gets()/puts()
	char str_3[50]; 	
	printf("%s","请输入第三个字符串:\n");
	getchar();//gets识别换行符作为输入结束,所以要先将上一个换行符吸收 
	gets(str_3);
	printf("%s","第三个字符串的内容为:\n");
	puts(str_3);
	
	return 0;
}

在这里插入图片描述
方法四

#include<cstdio>

int main(){
	char str[10];
	printf("请依次输入字符数组的10个元素:\n");
	for(int i=0;i<=9;i++){
		scanf("%c",str+i);
	}
	printf("字符数组的10个元素为:\n");
	for(int j=0;j<=9;j++){
		printf("%c",*(str+j));
	}
		
}

在这里插入图片描述

出处:《算法笔记》(胡凡,曾磊)

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐