(2018/8/25)
一、
#include <stdio.h>
int main ()
{
//一维数组部分: /*
char arr1[10];//定义但不给初始值,数组长度是10,有10个元素,在内存中是10个字节;//也可以不给出长度;
char arr2[5]={46,63,73,95,89};//定义并且初始化,给全部赋值
char arr3[5]={46,63,89};//定义但是部分赋值
char arr4[5]={0,};//全部赋值为0 //访问(即读、写操作)数组的单个元素时的格式str[i];i表示下标(从0开始);
//交换数组中的2个元素:
char s; s=arr2[1];
arr2[1]=arr2[2];
arr2[2]=s;
*/
//二维数组部分 /*
char a[4][3]= //定义一个二维数组为4行3列,占4*3*1=15(字节),char占1个字节 ,PS:都用逗号隔开
{
{78,90,70},
{45,76,98},
{12,23,49},
{23,67,89}
}; //此处分号不能少 */
//字符数组部分 :/*
char str[6] ="hello"; //即是 char str[6]={ 'h','e','l','l','o'};
printf("%s \n",str);//打印(字符串)字符数组
//字符的截断
str[4]=0;//给第5个元素赋0
printf("%s ",str);//打印字符数组,因为当遇到结束符(数字0或'\0')时就结束打印,所以str没有打印出来; */
return 0;
}
二、函数部分
#include <stdio.h>
int sum ( int a,int b);//函数声明,在C语言中:主函数调用子函数时必须满足条件之一(1、子函数的定义写在主函数前;2、子函数先声明)
int main ()
{
int z,x=9,y=8;
z=sum(x,y);//sum函数调用
printf("%d \n",z);
return 0;
}
//求和函数定义
int sum ( int a,int b) //int:是这个函数的返回类型,一个函数可以返回一个数值
//sum:是函数名,用字母、数字、下划线的组合
//int a,int b :即参数,可带N(N>0)个参数每个参数用逗号隔开,放在括号中,当引用函数时要在括号中输入相应数据
//当函数定义为 void sum(void){;}; //(void表示空)此时,该函数不返回任何值(so 函数体中不包括return语句),括号中的void可不写,函数参数个数为0即N=0即括号中什么也没有
//函数体↓
{
int s;
s=a+b;
return s;//将s的值作为函数值返回到函数被调用的地方
}
//代码图片:
三、编译错误与运行错误
1、编译错误:编译器提示的错误(列如:语法上的错等),如果有错就不会生成exe程序
2、运行错误:运行的程序的结果和预期不一样,说明程序不对,需要修改。(列如:switch(a) 或 case a: 中的a定义时要定义为int型;列如:定义了变量而没有赋值就加入运算)
ps:如果有多条错误,这先解决最先的错误,因为有可能发生连锁反应。
3、通常,把错误称为bug(原意:臭虫);而把找错误的过程称为debug(调试)。
4、单步调试与断点:
a、单步调试:就是走一步看一下结果,边走边观察结果,直到发现有一步出错。
b、断点:break print(F9切换),当程序运行到此时暂停,进入单步模式。
c、单步:step over (F10),运行程序,往下走一行。
d、继续运行:continue(F5)
*如有错,望君不吝赐教。