C语言复习笔记

C语言复习笔记

注意!!!

  • 换行符 : \n
  • 整除 -> / ; 取余 % 保留3位小数 -> %.3f
  • 切记赋值 = 相等 ==
  • scanf(" ", & );
  • 乘法运算时切记: 乘以用星号,不要省略

内容:

if—else 语句
if(  ){
    
}
else if( ){

}
else{
    
}
for循环
for(i=0;i<n;i++){
	
}
switch语句

switch(表达式){

case 常量表达式1:语句段1;break;

case 常量表达式2:语句段2;break;

……

case 常量表达式n:语句段n;break;

default : 语句段n+1;break;

}

先求表达式,如果表达式的值与某个常量表达式的值相等,则跳到该变量表达式执行,如果都不相等,则执行default后的语句,最后break,跳出Switch语句。

或可以省略default,省略后如果都不相等则什么都不执行。

int a,b;
char ch;
scanf("%d %d %c",&a,&b,&ch);
switch(ch){
          case '+':printf("=%d\n",a+b);break;
          case '-':printf("=%d\n",a-b);break;
          case '*':printf("=%d\n",a*b);break;
          case '/':printf("=%d\n",a/b);break;
          default:printf("don't know");break;
}
while循环
while(条件){
    循环体;
}

首先判断条件,只要条件满足就一直循环 //可以将while看成if->条件成立,执行//

​ //不知道循环次数的话用while循环//

eg:

while(fabs(item) >=0){
    i++;
}
do - while 语句

先循环一次,在判断条件是否继续循环。

do{
    循环体;
}while(条件);
   
eg:
    do{
        sum += 1;
    }while(sum<5);
字符型数据
  1. 字符型变量的定义: char ch;

  2. 字符型:%c

  3. 字符输入函数:ch=getchar( )

    字符输出函数:ch=putchar( )

    上述两个函数分别都只能输入或输出一个字符

    eg 1:

    //只作为理解
    char ch;
    scanf("%f %f %c",&a,&b,&ch);
    if(ch=='+'){
        printf("=%.3f\n",a+b);
    }
    else if(ch=='*'){
        printf("=%.3f\n",a*b);
    }
    else if(ch=='-'){
        printf("=%.3f\n",a-b);
    }
    else{
        printf("=%.3f\n",a/b);
    }
    

    if (ch == ‘+’ 注意:字符用’ ')

    eg 2:

    for(i=0;i<n;i++){
    	ch=getchar( );   //持续输入一个字符
        putchar(ch);    //输出
    }
    
break 和 continue
  • break的两个用途:1. Switch语句的组成部分; 2. 跳出循环 //只能跳出当前循环,不能跳出多层循环。

    eg:
    for(i=0;i<5;i++){
        if(i=4){
           printf("hello world");
           break; 
        }
    }
    
  • continue用法:continue 会跳过当前循环中的代码,强迫开始下一次循环。。//只有这一个用途

     for(i=1;i<=10;i++) 
      {
         if (i%5==0){
             continue;//后面的语句也不执行了,重新开始循环
         }  
         printf("%d",i);
       }               
    
    

continue图解 :
在这里插入图片描述

数学公式

求平方 :sqrt(x)

求绝对值:fabs(x)
幂函数 :pow(2,3) -> 二的三次方

逻辑运算符

与: a && b

或: a || b

非: a !b

ASCII

在这里插入图片描述

函数
  • 声明

    要在main函数前面or里面声明

    double area(double x, double y, double z);  
    

    注意不能写成 double x,y,z;

  • 定义

    • 可以在声明后紧接着定义

    • 也可以在main函数后面定义

      double area(double x, double y, double z) // 函数首部 
      {
      	double p,result;
      	p= (x + y + z) / 2;
      	result=sqrt(p * ( p - x ) * ( p - y ) * ( p - z )) ; 
          return result;
      }
      
      
      double area(double x, double y, double z);  
      int main()
      {
          rerurn 0;
      }
      double area(double x, double y, double z) // 函数首部 
      {
      	double p,result;
      	p= (x + y + z) / 2;
      	result=sqrt(p * ( p - x ) * ( p - y ) * ( p - z ) ) ; 
          return result;
      }
      
  • 调用

int main()
{
    s=area(1,2,3);
    return 0;
}
  • 不返回结果的函数 (void)

    • 注意void不能省略,否则被默认定义为int

    • 不返回结果的函数,在定义、调用、参数传递、函数声明上,思路完全与以前相同,只是函数类型变为void

局部变量和全局变量
  • 局部变量:

    • 函数内定义的变量(包括形参) 作用范围:本函数内部
    • 定义在复合语句内的变量 作用范围:复合语句内部的变量
  • 全局变量:

    • 函数以外定义的变量,不属于任何函数。作用范围:从定义处到源文件结束(包括各函数)

    // 全局变量可以解决多返回值问题

注意:若局部变量与全局变量同名局部变量优先

(将变量比作抗生素,要对症下药,不要什么都用最强的抗生素药(全局变量),一般,尽量使用局部变量和函数参数。)

  • 静态局部变量(static)

    • 生存周期直到程序结束

    • 上一次的函数调用后的值仍保留,供本次调用继续使用。

      作用范围:复合语句内部的变量

  • 全局变量:

    • 函数以外定义的变量,不属于任何函数。作用范围:从定义处到源文件结束(包括各函数)

    // 全局变量可以解决多返回值问题

注意:若局部变量与全局变量同名局部变量优先

(将变量比作抗生素,要对症下药,不要什么都用最强的抗生素药(全局变量),一般,尽量使用局部变量和函数参数。)

  • 静态局部变量(static)
    • 生存周期直到程序结束
    • 上一次的函数调用后的值仍保留,供本次调用继续使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值