(1)字符串
#include <stdio.h>
int main()
{undefined
char arr1[]="linqinyan"; // 字符串末尾含有一个隐藏的\0,\0为读取字符串的结束标志
char arr2[]={'l','q','y','\0'}; // 单个字符中末尾需要添加一个\0来作为读取结束标志
printf("%s\n",arr1); // linqinyan
printf("%s\n",arr2); // lqy
return 0;
}
注释:字符串格式符:"%d"为整型("%3d"表示输出3位整型数,不够向右对齐补空格,反之"%-3d"为输出3位整型数,不够向左对齐补空格),"%f"为浮点型(当要求保留小数位时 可写成".x",x为需要保留的小数位),"%c"为字符型,"%s"为字符串型。
(2)转义字符
\? //在书写连续多个问号时,防止他们被解析成三字母词
\' //用于表示字符常量'
\'' //用于表示一个字符串内部的双引号
\\ //用于表示一个反斜杠,防止它被解释为一个转义序列符
\a //警告字符,蜂鸣
\b //退格符
\f //换页
\n //换行
\r //回车
\t //水平制表符,相当于4个空格
\v //垂直制表符
\ddd //ddd表示1-3八进制的数字
\xdd //dd表示2个十六进制数字
Eg:
#include <stdio.h>
int main()
{undefined
printf("%d",strlen("lin\tqin\tyan\x10\10")); /* strlen是一种函数用于计算字符串的长度,读取到\0为结束标志。因为\t、\x10、\0为一个转义字符,所以结果为13
printf("%s\n","\""); //打印"
printf("%c\n",'\''); //打印'
return 0;
}
(3)注释
代码中有一些代码比较难懂,这时我们可以在旁边加一些注释文字,使代码具有更高的可读性。
注释有两种风格:
Eg:
c语言风格的注释:/*xxxxxxxx*/
缺陷:不能嵌套注释
c++风格的注释://xxxxxxxx
可以注释一行或多行
6.循环语句
(1)if语句
#include <stdio.h>
int main()
{undefined
int r=0;
int x=1;
int m=2;
int k=3;
scanf("%d",&r);
if(r=0)
printf("%d",x); //1
else if(r=1)
printf("%d",m); //2
else
printf("%d",k); //3
return 0;
}
注释: /*若满足if中的条件,则执行printf("%d",x),下面语句均不执行,跳出if语句。若不满足if中的条件,则往下寻找满足else if条件的语句,若满足则跳出if语句,else if语句可以有多条,若都不满足,则执行else语句*/
(2)while循环语句
#include <stdio.h>
int main()
{undefined
int r=0;
while(r<10) /*满足条件时进入循环,直到不满足时跳出循环体,一开始不满足条件时跳过循环*/
{undefined
printf("linqinyan\n"); //每行打印10个linqinyan
r++; //每次循环r后置+1
}
printf("lqy") ; //打印lqy
return 0;
}
注释:r++(后置++)先使用r的值再+1,++r(前置++)先+1后使用。
(3)for循环语句
#include <stdio.h>
int main()
{undefined
int r=0;
for(r=0;r<10;r++) /*满足条件时进入循环,直到不满足时跳出循环体,一开始不满足条件时跳过循环*/
{undefined
printf("linqinyan\n"); //每行打印10个linqinyan
}
printf("lqy"); //打印lqy
return 0;
}
(4)do...while循环、switch语句
#include <stdio.h>
int main()
{undefined
int r=0;
int t=2;
scanf("%d",&r);
do{undefined
switch(r)
{undefined
case 0:
pritf("linqinyan"); break; //r为0时,执行语句case 0,之后break跳出循环
case1:
printf("lqy"); break; //r为1时,执行语句case 1,之后break跳出循环
default:
printf("1010"); break; //当不满足以上条件时,则执行语句default
}
}while(t--); //当条件不成立时跳出循环
return 0;
}
注释:1.if为判断语句 2.for循环比较适合循环已知的操作 3.while循环比较适合未知的操作 4.do...while循环至少执行一次的循环操作,条件不成立时跳出循环 5.switch为选择语句
7.函数
#include <stdio.h>
int Add(const int x,const int y) /*传入a的值为下,传入b的值为y,因为Add函数功能为计算a,b值之和,不需要改变其大小,可以加上const进行修饰,使代码变的更健壮*/
{undefined
int z=x+y; //计算a,b之和
return z; //返回一个整数值z
}
int main()
{undefined
int a=0;
int b=0;
int sum=0;
scanf("%d %d",&a,&b);
sum=Add(a,b); //整型sum接收整型返回值z
printf("%d",sum);
return 0;
}
注释:函数的特点,简化代码,代码可以反复调用,Add函数部分形参,main为实参,Add函数在调用前不占内存空间
8.数组
#include <stdio.h>
int main()
{undefined
int r=0;
int arr[]={1,2,3,4,5,6,7,8,9,10}; //arr数组
for(r=0;r<10;r++) //
{undefined
printf("%d",arr[r]); //打印arr中下标为i的数值
}
printf("\n"); //全部打印完之后进行换行
return 0;
}