int a[10]={0};
int a[10]={};
//或者memset函数
getchar();
putchar('\n');
gets识别换行符\n作为输入结束——scanf完一个整数后,如果要使用gets,需要先用getchar接收整数后的换行符。puts输出字符串后,会紧跟一个换行。
输入输出的真正含义是:输入输出并存起。
空字符\0——表示存放的字符串的结尾。在使用gets或scanf时自动添加至末尾,并占用一个字符位,puts和printf通过识别\0来输出。
特别提醒1:①字符数组的长度>=实际存储字符串的长度+1;②只有char型数组末尾需要加\0,int型不需要;③\0和空格不同,\0的ASCII码是0(空字符NULL),空格的ASCII码是32。
特别提醒2:如果不是使用scanf的%s格式或gets函数输入字符串(例如使用getchar),一定要在输入的每个字符串后加“\0”,否则printf和puts会因无法识别字符串末尾而输出一大堆乱码。见代码2.27。
ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符 [1] 。
#include
int len=strlen(str); //得到字符数组中第一个\0前的字符的个数
int cmp=strcmp(str1,str2);//返回两个字符串大小的比较结果
if(cmp<0) printf("str1);
else if(cmp>0) printf("str1>str2\n");
else printf("str1==str2\n");
strcpy(str1,str2);//把一个字符串复制给另一个字符串
strcat(str1,str2);//把一个字符串接到另一个字符串后面
scanf("%d",&n);
scanf(screen,"%d",&n);
printf("%d",n);
printf(screen,"%d",n); //screen是屏幕
sscanf(str,"%d",&n);
printf("%d",n); //初始化str,写到n里
sprintf(str,"%d",n); //字符数组str
printf("%d",str); //初始化n,写到str里
#include
int main(){
int a[10]={3,1,4,5,2};
for(int i=1;i<=4;i++){ //进行n-1趟
//第i趟从a[0]到a[n-i-1]都与它们下一个数比较
for(int j=0;j<5-i;j++){
if(a[j]>a[j+1]){ //如果左边的数更大,则交换a[j]和a[j+1]
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(int i=0;i<5;i++){
printf("%d",a[i]);
}
return 0;
}
把i打成了1。
#include
int main(){
int a[3][3][3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
for(int k=0; k< 3; k++){
scanf("%d",&a[i][j][k]); //输入三维数组a的元素
a[i][j][k]++; //自增
}
}
}
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
for(int k=0; k< 3; k++){
printf("%d\n",&a[i][j][k]); //输出三维数组a的元素
}
}
}
return 0;
}
#include
#include
int main(){
int a[5]={1,2,3,4,5};
//赋初值0
memset(a, 0, sizeof(a));
for(int i=0;i<5;i++){
printf("%d", a[i]);
}
printf("\n");
//赋初值-1
memset(a,-1, sizeof(a));
for(int i=0;i<5;i++){
printf("%d", a[i]);
}
printf("\n");
return 0;
}
#include
#include
int main(){
int a[5]={1,2,3,4,5};
//赋初值1
memset(a,1, sizeof(a));
for(int i=0;i<5;i++){
printf("%d", a[i]);
}
printf("\n");
return 0;
}
#include
int main(){
char str[5][5];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
str[i][j]=getchar();
}
getchar(); //这句是为了把输入中每行末尾的换行符吸收掉
}
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
putchar(str[i][j]);
}
putchar('\n');
}
return 0;
}
#include
int main(){
char str[15];
for(int i=0;i<5;i++){
str[i]=getchar();
}
puts(str);
return 0;
}