第五章知识点总结

总概:第五章学习内容主要包括三大结构:顺序结构,选择结构,循环结构;其中选择结构又包括if和switch两大种,循环结构包括while,do...while,for循环三大种,下面是我自己总结到的一些内容(里面还包括一些特殊的代码):

一.语句概述:

包含三大种:表达式语句(一个表达式后跟着一个分号),流程控制语句(如break,continue和goto等)和复合语句(将多个语句用{}括住)二.顺序结构:

流程中没有任何分支,转移,程序从上至下顺序执行;如下列代码:

问题:输入以秒为单位所表示的时间,将其转换成几日几时几分几秒

#include<stdio.h>
int main()
{
   int sec,min,hour,day,total_sec;
   printf("Input total second:\n");
   scanf("%d",&total_sec);
   sec=total_sec;
   min=sec/60;
   sec=sec%60;
   hour=min/60;
   min=min%60;
   day=hour/24;
   hour=hour%24;
   printf("%d second %d day %d hour %d minute %d second\n",total_sec,day,hour,min,sec);
   return 0;
}

三.选择结构;

1.if语句:先处理表达式,表达式真就执行,假就跳出,执行后面的语句;

#include<stdio.h>
int main()
{
   int a=5,b=10;
   if(a=b)
   {
      printf("b==%d",b);
   }
   printf("a=%d\n",a);
   return 0;
}
b=10,a=10

2.if...else语句:格式:if(表达式)   语句1

                                    else     语句2

3.if语句的嵌套:

if()       语句1

else     语句2

else 

if()       语句3

else     语句4

4.if...else  if...else语句

if(表达式1)  语句1

else if(表达式2) 语句2

......

else if(表达式n)   语句n

else  语句 n+1

5.switch语句:编写多分支选择结构

格式:switch(表达式)

{          case 常量表达式1:语句1

           case 常量表达式2:语句2

           ......

           case 常量表达式n:   语句n

           default:语句 n+1

}

注意:1.每个case中的表达式,不能含有变量,必须是整常量或字符常量;例如:case 1.1:语句序列;case a>10:语句序列;都是错误的;2.同一个switch中的各个case表达式的值必须互不相同;3.case和default的顺序可以任意;4.多个case可用一组语句;

四.条件运算符【表达式1?表达式2:表达式3】

五.循环结构:

1.while语句:先计算表达式,再判断表达式的值是否为真,若是真,则继续执行循环体,若非真,则结束循环;

#include<stdio.h>
int main()
{
   int n=10;
   while(n>7)
   {
       n--;
       printf("%d\n",n);
   }
   return 0;
}
输出结果为:9
           8
           7

2.do...while循环:先执行一次循环体,在计算表达式,若为真,则在执行一次循环体,否则,退出循环;

#include<stdio.h>
int main()
{
   long n=0,num;
   printf("Inter an integer:\n");
   scanf("%ld",&num);
   do{
        n=n*10+num%10;
        num=num/10;
     }while(num!=0);
   printf("%ld\n",num);
   return 0;
}

3.for循环语句:for(表达式1;表达式2;表达式3)

代码示例:判断素数

#include<stdio.h>
int main()
{
   int m,i,k,flag=1;
   printf("Enter an int number:");
   scanf("%d",&m);
   k=sqrt(m);
   for(i=2;i<=k;i++)
   if(m%i==0){flag=0;break;}
    if(flag)
         printf("%d is prime number.",m);
    else
         printf("%d is not prime number.",m);
    rerurn 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TJNU-2330090045

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值