C语言:一、入门基础

这篇博客介绍了C语言的入门知识,包括C语言的搭建、system函数的使用、C语言的基础框架、变量规则、输入输出、编程思路、选择语句(if, else, switch, case)以及循环控制语句(while, for, do...while)的应用。" 111975507,10295573,ENVI5.3.1使用Fmask算法进行云检测,"['遥感', '图像处理', 'ENVI软件', '云掩膜', 'Landsat卫星']

C语言入门

**1.1.C语言搭建及system函数
system功能:运行windows命令

1.2.C语言的基础框架解释**

#include <stdio.h>
#include <stdlib.h>
int main()  //main是程序的入口,操作系统启动一个程序,先找整个exe文件中main的位置
            //main是函数名称,搭配()才算函数
{
    printf("hello world");  
    system("pause");        //函数调用:System函数——运行Windows命令.
                            //pause指令:等待用户输入,造成程序再输入之前不会结束.
    return 0;               //int和return 0是配套的,int需要返回整数0.void则不需要返回任何东西.
}

1.3.C程序变量

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int num1=10;//num1的房间里有一个人 (定义一个变量,必须先声明再使用)
    
    int num2=2;//num2的房间里有一个人
    
    int num3=0;//num3的房间里有零个人
    
    num3 = num1 + num2;//此时,num3里的人数为num1和num2房间里所有人数的和
    
    printf("num3=%d,输出完毕",num3);/*占位符:%d代表在输出的地方占一个坑,至于输出什么内容,
    由逗号后面的变量名里的变量值说了算*/
    
    system("pause");
    
    return 0;
}
/*知识点
1.变量类型 变量名  变量值
   int      a  =		10   ;
 整数型				  整数(初值)
2.定义一个变量,变量必须先声明再使用;
3.占位符:%d  */

c语言变量名规则是:
1、变量名以英文字母开头;
2、变量名中的字母是区分大小写的;
3、变量名不能是关键字;
4、变量名中不能包含空格、标点符号和类型说明符。
详情请访问

1.4.C程序的输入输出

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int num1,num2,num3;
    
    printf("请输入两数个加数");
    
    scanf("%d %d",&num1,&num2);/*
1.scanf双引号中除了占位符,尽量不要写任何其他的东西,否则输入时很有可能产生错误;
2.占位符知识代表从键盘输入了一个数,放在哪儿呢?——肯定跟变量名有关系。错误写法scanf(“%d”,num1);要取地址&;
3.输入scanf比输出printf多出了一个地址&的约束;
4.当连续输入多个变量时,尽量分开写;
5.逗号后面的顺序根据占位符编排,顺序不要出错。
*/
    num3 = num1 + num2;
    
    printf("结果:%d+%d=%d\n",num1,num2,num3);
    
    system("pause");
    
    return 0;
}

1.5.新手变成没有思路怎么搞
“用中文编程(写出步骤(算法))”

#include <stdio.h>
#include <stdlib.h>
int main()
{
    //0.变量声明
    int a,b,c;
    //1.提醒用户输入第一个加数
    printf("请输入第一个加数");
    //2.获取用户输入
    scanf("%d",&a);
    //3.提醒用户输入第二个加数
    printf("请输入第二个加数");
    //4.获取用户输入
    scanf("%d",&b);
    //5.计算
    c=a+b;
    //6.输出结果
    printf("结果:%d+%d=%d",a,b,c);
    return 0;
}

1.6.选择语句之if&else

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int num;
    
    //1.提醒用户请输入一个数
    printf("请输入一个数");
    
    //2.获取用户输入
    scanf("%d",&num);
    
    //3.是否满足某条件
    if(num>=100){   //满足条件进入该段
    printf("可\n");
    printf("值%d",num>=100); //逗号后条件改为判断语句,真输出1,假输出0
    }
    
    else{   //不满足条件进入该段
    printf("抱歉");
    printf("值%d",num>=100);
    }
    
    return 0;

总结:if(条件){语句块} else{语句块}

1.7.选择语句的嵌套
这里讨论了一个男女相亲的问题

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int rmb,house;
    
    printf("请输入RMB数字:\n");
    scanf("%d",&rmb);
    
    printf("请输入HOUSE数字:\n");
    scanf("%d",&house);
    
    if(rmb>=100){   //你有100万吗?
        if(house>=2){   //那好,你有两套房子吗?
            printf("我可\n");
        }
        else{
            if(rmb>=200){   //200万也可!
                printf("我可");
            }
            else{
                printf("抱歉\n");
            }
        }
    }
    //既然没有100万
    else{
        if(house>=3){   //其实三套房子也可以
            printf("我可\n");
        }
        else{   //都没有那就算了
            printf("抱歉");
        }
    }
    
    return 0;
}

1.8.选择语句之成绩等级判断

#include <stdio.h>
#include <stdlib.h>
int main()
{
    //0.变量声明
    int score;
    
    //1.提醒用户输入
    printf("请输入成绩:");
    
    //2.获取用户输入
    scanf("%d",&score);
    
    //3.判断
    if(score>=90){
        printf("成绩优秀");
    }
    else if(score>=75 && score<90){ //两个区间的并集用&&连接
        printf("成绩良好");
    }
    
    else if(score>=60 && score<75){
        printf("成绩合格");
    }
    
    else if(score<60){
        printf("成绩不及格");
        
    }
    
    return 0;
}

1.9.多分支选择:switch&case&break&default
对比多个else if,switch在面对多个选择时就显得很可观。

总结:switch(对象)
{
	case xxx:printf("xxx");
	break;
	case xxx:printf("xxx");
	break;
	
	default: //除去上面的情况
	printf("xxx");
	break;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
    //0.变量声明
    int score;
    
    //1.提醒用户输入
    printf("请输入学生成绩(0-100):");
    
    //2.获取用户输入
    scanf("%d",&score);
    
    //3.判断
    switch(score/10){   //在使用“/”符号是,注意数据类型,如果是整数型除以整数型,那么得到的结果依然是整数型
    	//case可以连着写
        case 0:
        case 1:
        case 2:
        case 3:
        case 4:
        case 5:
        printf("您的成绩不合格");
        break;
        
        case 6:
        case 7:
        printf("您的成绩中等");
        break;
        
        case 8:
        printf("您的成绩良好");
        break;
        
        case 9:
        case 10:
        printf("您的成绩优秀");
        break;
        
        default:
        printf("请输入0-100以内的数字");
        break;
    }

    return 0;
}

1.10.循环控制语句之while
总结:whlie(条件){语句块}

#include <stdio.h>
#include <stdlib.h>
int main()
{
    //0.变量声明
    int score,cishu=0;
    
    while(1){   //当while括号里的条件为真时执行{}中内容
        cishu=cishu+1;
        
    //1.提醒用户输入
    printf("请输入第%d次成绩:",cishu);
    
    //2.获取用户输入
    scanf("%d",&score);
    
    //3.判断
    if(score>=90){
        printf("成绩优秀\n");
    }
    else if(score>=75 && score<90){
        printf("成绩良好\n");
    }
    
    else if(score>=60 && score<75){
        printf("成绩合格\n");
    }
    
    else if(score<60){
        printf("成绩不及格\n");
    }
    
    if(cishu==50){  //循环终止的条件
        break;  //break用来跳出循环
    }
}
    
    return 0;
}

1.11.循环控制语句之for
总结:for(初始条件;约束条件;变化条件){语句块} //强调分号;满足约束条件进入循环;与while相比无需break即可跳出循环。
如:for(cishu=0;cishu<=10;cishu++){语句块}

#include <stdio.h>
#include <stdlib.h>
int main()
{
    //0.变量声明
    int score,cishu;
    
    for(cishu=1;cishu<=3;cishu++){   //当while括号里的条件为真时执行{}中内容
    //1.提醒用户输入
    printf("请输入第%d次成绩:",cishu);
    
    //2.获取用户输入
    scanf("%d",&score);
    
    //3.判断
    if(score>=90){
        printf("成绩优秀\n");
    }
    else if(score>=75 && score<90){
        printf("成绩良好\n");
    }
    
    else if(score>=60 && score<75){
        printf("成绩合格\n");
    }
    
    else if(score<60){
        printf("成绩不及格\n");
    }
    
    if(cishu==50){  //循环终止的条件
        break;  //break用来跳出循环
    }
}
    
    return 0;
}

1.12.do…while的补充
总结:先do后while

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int i=0;
    do{
        i++;
        printf("666\n");
        if(i==3){
            break;  //跳出while循环
        }
        
    }
    while(1); //先do后while
    
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值