对数组中每一个元素赋相同的值
memset( 数组名, 值, sizeof(数组名) ); //string.h 使用赋 0 或 -1
memset(a, -1,
sizeof
(a));
fill() // algorithm 赋任何值
fill(a, a+5, 233);
字符数组输入输出
(1)输入scanf 输出printf 以空格结束
char
str[10];
scanf(
"%s"
, str);
printf(
"%s"
, str);
(2)输入getchar 输出putchar 输出一个字符或单个字符 //记得要在字符最后加个‘\0’
str[5] = getchar();
putchar(str[5]);
(3)输入gets 输出puts 以回车结束
gets(str); //以回车结束
put(str); // 输出一行字符串, 后面还跟一个换行‘n’;
string.h头文件
strlen(字符数组) // 的得到第一个\0前的字符个数
strcmp(字符数组1, 字符数组2) 返回比较结果
strcpy(字符数组1, 字符数组2 ) 2复制给1 包括复制‘\0’
strcat(字符数组1, 字符数组2 ) 2接在1的后面 2不变
sscanf 和 sprintf 在stdio.h中
类比
scanf(screen,
"%d"
, &n);
printf(screen,
"%d"
, n);
把screen 变成字符数组
char
str[10]
sscanf(str,
"%d"
, &n); // 从左往右 字符串变成整数(当成输入)
sprintf(str,
"%d"
, n); //从右往左 整数变成字符串 (当成输出)
sscanf : //可以把字符串当输入
int
n;
double
db;
char
str2[100];
char
str[100] =
"2048:3.14,hello"
;
sscanf(str,
"%d:%lf,%s"
, &n, &db, str2);
sprintf : //把别的类型的东西转成字符串
int
n = 12;
double
db = 3.1415;
char
str2[100] =
"hello"
;
char
str[100];
sprintf(str,
"%d:%.2f,%s"
, n, db, str2);
实用的输出格式:
%md 右对齐 在前面补
%0md 不足m位在前面补0
%.mf 浮点数保留几位小数