字符数组输入输出疑问
#include"stdio.h"#include"stdlib.h"intmain(){chara[3][5];scanf("%d%d%d",a[0],a[1],a[2...
#include"stdio.h"#include"stdlib.h"int main(){ char a[3][5]; scanf("%d%d%d",a[0],a[1],a[2]); printf("%c %c %c\n",a[0],a[1],a[2]); system("pause");}这段代码编译后为何有如下图中的错误?
代码如图所示: 展开
代码如图所示: 展开
2个回答
展开全部
char a[3][5];已经定义a是二维字符数组,或者叫它字符串数组更贴切。
本例中如果只是要运行字符数组(一维)的输入输出,建议把a改成一维数组即可:char a[5];。如果要运行字符串数组的输入输出,则要做如下的修改,把六个%c改为%s,可实现字符串数组的打印:
int main()
{
char a[3][5];
scanf("%s%s%s",a[0],a[1],a[2]);
printf("%s\n%s\n%s\n",a[0],a[1],a[2]);
system("pause");
}
更多追问追答
追问
上面编译器中出现的char*型是指什么?
追答
指的是变量类型,char*代表字符型指针变量,int *代表整型指针变量。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询