C语言九条基本语句

目录

1. 简介

1.1 概述

1.2  C语言基本结构

2. 九条基本语句

2.1 If语句

2.2 switch语句

2.3 循环语句

2.3.1 while循环语句

2.3.2 do while循环语句

2.4 for循环语句

2.5 跳转语句

 综合练习


1. 简介

1.1 概述

        具有一定的逻辑功能和控制功能

1.2  C语言基本结构

        顺序结构、选择结构、循环结构

        ①顺序结构:是指从左到右,从上到下的顺序执行程序

        ②选择结构:根据给予的条件判定,根据判定的结果来控制程序的运行

       ③循环结构:因某些原因而反复循环使用的一种程序结构。分为两种:一种是只关心循环次数,不管结果,另一种则是只关心结果,不关心循环次数。

2. 九条基本语句

2.1 If语句

(1)if

          格式:if(条件表达式){

                          语句1;

                     }

           含义:对表达式结果进行判定,结果为真则执行语句1,为假则不执行。

(2)if else

         格式:   If(条件表达式){

                                语句1;

                       }

                      else {

                                语句2;

                       }

          含义:对表达式结果进行判定,结果为真则执行语句1,为假则执行else内的语句2。

(3)if   else if

          格式: if(条件表达式1){

                           语句1; 

                      }

                      else if(条件表达式2){

                           语句2;

                      }

含义:对表达式1进行判定,结果为真则执行语句1,结果为假则继续判定表达式2,若表达式2结果为真则执行语句2,结果为假则不执行任何操作。

#include <stdio.h>

int main()
{
      int num;

      printf("请输入成绩\n");
      scanf("%d",&num);

      if( num>=0 && num<=59)
      {
            printf("成绩不合格\n");
      }
      else if(num<=89 && num>=60)
      {
            printf("成绩良好\n");
      }
      else if(num<=100 && num>=90)
      {
            printf("成绩优秀\n");
      }
      else
      {
            printf("输入错误\n");
      }
}

2.2 switch语句

1)格式:switch(整型表达式)

               {

                  case 常量1:语句1;

                  case 常量2:语句2;

                      :

                      :

                  case 常量n:语句n;

                  default : 语句 n+1;

               }

(2)含义:计算表达式1的值并与case的常量值作比较,若相等则执行其后的语句,并且不再进行判断,直接执行后面所有case后的语句。如果表达式的值与所有case的值都不相等则执行default后的语句。

         可用break语句来跳出switch语句

int main()
{
int n,s;
	printf("输入月份:");
	scanf("%d",&n);
	
	switch(n)
	{
		case 1:
		case 3:
		case 5:
		case 7:
		case 8: 
		case 10:
		case 12: printf("本月有31天\n");break;
		case 2:  printf("闰年输入1,平年输入2:");
	             scanf("%d",&s); 
                if(s==1)
				{
					printf("本月28天\n");
				}
				else
				{
					printf("本月29天\n");
				} 
		        break;
		case 4:
		case 6: 
		case 9:
		case 11: printf("本月有30天\n");break;
		default : printf("月份输入错误\n"); 
	} 
} 

2.3 循环语句

2.3.1 while循环语句

(1)格式while(条件表达式)

                  {

                        循环体语句;

                   }

(2)含义:计算表达式的值如果为真则循环执行语句,如果为假则不做任何操作。

#include <stdio.h>

int main()
{
	int i=0;
	while(i<=10)
	{
		printf("i=%d\n",i);
		i++;
	}	
}

2.3.2 do while循环语句

(1)格式:do

             {

                 循环体语句;

              }while(条件表达式);

(2)含义:先执行一次循环体语句,再判定条件表达式,结果为真则再执行一次循环体语句,结果为假不做任何操作。

#include <stdio.h>

int main()
{
    int x=1,a;
    printf("是否循环,输入0或1\n");
    scanf("%d",&a);
    do
    {
	 x+=1;	
     printf("%d\n",x);  
    }
    while(a);
}

2.4 for循环语句

(1)格式

        for(循环变量赋值语句1;循环条件表达式;变量更改语句2)

        {

               循环体语句;

        }

(2)含义:首先根据语句1赋予循环变量的初值,按照条件表达式的规则,判断是否满足循环条件,如果满足,就执行循环体执行语句,循环体执行语句执行完后,根据语句2对循环变量进行相应的操作。

#include <stdio.h>

int main()
{
	int i;
	for(i=1;i<=100;i++)
	{
		if(!(i%7))
		{
			printf("%d\n",i);
		}	
	}
}

2.5 跳转语句

(1)break语句

        结束离break最近的循环语句

(2)continue语句

        结束本次循环,开始下一次循环

(3)return语句

        主要用于结束函数,或用于返回值

(4)goto语句

        让程序无条件跳转到标签位置,往下执行语句。

 综合练习

//输入两个整数,判断第一个数能否把第二个数整除
#include <stdio.h>
int main()
{
	int a,b;
	printf("输入数值a:");
	scanf("%d",&a); 
	printf("输入数值b:");
	scanf("%d",&b);
	if(a%b==0)
	{
		printf("能整除\n");
	}
	else
	{
		printf("不能整除\n");
	}
}

//判断用户输入的整数
#include <stdio.h>
int main()
{
	
	while(1)
	{
		int a;
		printf("输入整数:");
		scanf("%d",&a);
		if(a<0)
		{
			printf("负数\n"); 
		}
		else if(a>0 && a%2==0)
		{
			printf("正偶数\n");
		} 
		else if(a>0 && a%2==1)
		{
			printf("正奇数\n");	
		}
	}
}
	//编写一个简单的计数器,输入整数,计算表达式,并输出结果
#include <stdio.h>
int main()
{
	int data1,data2,s;
	char op;
	printf("输入要计算的整数、运算符、整数:");
	scanf("%d%c%d",&data1,&op,&data2); 
	switch(op)
	{
		case '+': s=data1+data2;printf("%d\n",s);break;
		case '-': printf("%d\n",data1-data2);break;
		case '*': s=data1*data2;printf("%d\n",s);break;
		case '/': printf("%7.5f\n",data1/(float)data2);break;
	} 
}
  • 10
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值