char类型的数组怎么用scanf赋值
(1)用字符常量逐个初始化数组。例如:char a[8]={'i','l','o','v', 'e','y','o','u'}
把8个字符依次分别赋给c[0]~c[7]这8个元素。
如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的。如果花括号中提供的初值个数(即字符个数)大于数组长度,则出现语法错误。
如果初值个数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定为空字符(即'\0')。
如果提供的初值个数与预定的数组长度相同,在定义时可以省略数组长度,系统会自动根据初值个数确定数组长度。
例如:char c[]={‘c’,‘’,‘p’,‘r’,‘o', 'g','r','a','m'}
这时c数组的长度自动定为9。也可以定义和初始化一个二维字符数组,例如:
char diamond[5][5]={{'','','#'},{'','#','','#'},{'#','','','','#'}
{'','#','','#'},{'','','#'}}用它代表一个菱形的平面图形。
(2)字符串常量初始化数组。例如:
char c[]={‘c’,‘’,‘p’,‘r’,‘o', 'g','r','a','m'}
可写为:char c[]={"C program"}
或去掉{}写为:char c[]="C program"
注意:此时数组c的长度不是9,而是10。因为字符串常量的最后由系统加上一个'\0'。上面的初始化与下面的初始化等价。
char c[]={‘c’,‘’,‘p’,‘r’,‘o','g', 'r','a','m','\0'}
char类型的数组怎么用scanf赋值
可以参考下面的代码:
#include<stdio.h>
int main()
{
int a[3][2], i, m
for (i = 0 i< 3 i++)
{
for (m=0m<2m++)
scanf("%d", &a[i][m])
for (i = 0 i< 3 i++)
{
for (m=0m<2m++)
printf("%d\n", a[i][m])
}
return 0
}
扩展资料:
函数原型
int scanf(const char * restrict format,...)
函数 scanf() 是从标准输入流stdin(标准输入设备,一般指向键盘)中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
函数的第一个参数是格式字符串,它指定了输入的格式,并按照格式说明符解析输入对应位置的信息并存储于可变参数列表中对应的指针所指位置。每一个指针要求非空,并且与字符串中的格式符一一顺次对应。