您当前的位置: 首页 >  c语言

仙剑情缘

暂无认证

  • 1浏览

    0关注

    333博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C语言入门之结构化程序设计

仙剑情缘 发布时间:2019-05-16 07:38:09 ,浏览量:1

  • 选择结构
  1.   判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件

  为假时要执行的语句(可选的)。

  C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false

if判断结构的一般形式

例: 输入两个实数,按代数值由小到大的顺序输出这两个数。

if else语句

Ø例:输入一个数,小于60输出不及格,否则及格。

Ø解题思路:

  1. 用scanf函数接收鍵盘输入的数
  2. 用if else语句实现条件判断,分别输出不及格和及格两种情况。
#include  //包含标准输入输出头文件
int main() //主函数main,程序的入口函数
{ 
   int score;  //定义一个整型变量score
   scanf(“%d”,&score); //从键盘输入1个值
   if(score < 60)  // 条件判断
       printf(“不及格\n”);    // 语句1
   else
       printf(“及格\n”);    // 语句2
   return 0;  //函数返回值为0
}
if.. else if ..else..语句

Ø例:按照考试成绩等级输出百分制,A等为85分以上,B等为70~84分,C等为60~69分,

          D等为60分以下,成绩等级由键盘输入。

Ø解题思路:

  1. 用scanf函数接收鍵盘输入等级。
  2. 用if.. else if..else 语句实现条件判断, 输出等级对应的分数。
#include 
int main()
{    
   char grade;
   scanf("%c",&grade);
   if(grade == ‘A’)  // 条件判断
       printf(“85~100分\n”);    // 语句1
   else if(grade == ‘B’)
 		printf(“70~84分\n”);   // 语句2
   else if(grade == ‘C’)
		 printf(“60~69分\n”);   // 语句3
   else if(grade == ‘D’)
		printf(“60分以下\n”);     // 语句n
   else
 		printf(“输入的等级错误\n”);    //语句n+1
   return 0;
}
最常用的3种if语句形式:

1. if (表达式) 语句1    (没有else子句)

2. if (表达式) 语句1        

    else  语句2           (有else子句)

3. if(表达式1)    语句1

    else if(表达式2) 语句2

    else if(表达式3) 语句3

                  ┆

    else if(表达式m) 语句n

            else   语句n+1

switch语句

例: 要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为70~84分,C等为

60~69分, D等为 60分以下 。成绩的等级由键盘输入。

Ø解题思路:

  1. 判断出这是一个多分支选择问题
  2. 根据百分制分数将学生成绩分为4个等级
  3. 如果用if语句,至少要用3层嵌套的if,进行3次检查判断
  4. 用switch语句进行一次检查即可得到结果

三元运算符

例:输入两个数,输中两个数中最大的数

Ø解题思路:

  1. 用scanf函数接收鍵盘输入2个数
  2. 用if else语句判断最大最小值,这里用三元运算符取代if else
  3. 将得到最大值输出到屏幕
#include 
int main()
{   
   int a,b,max;  //定义3个整型变量
   scanf("%d %d",&a,&b);
   
    max = a > b ? a :b;  // 三元运算符取代if else语句
	printf(“a,b中最大的数是%d\n”,max);
   return 0;
}
  • 选择结构的嵌套

Ø解题思路:

  1. 用if语句检查x的值,根据x的值决定赋予y的值
  2. 由于y的可能值不是两个而是三个,因此不可能只用一个简单的(无内嵌if)的if语句来实现
#include 
int main()
{   
   int x,y;  //定义2个整型变量
   scanf("%d",&x);
   if(x < 0)
		y = -1;
   else
         if(x == 0)
		   y = 0;
		else 
             y = 1;
	printf(“a,b中最大的数是%d\n”,max);
   return 0;
}
  • 循环结构程序设计

用do---while语句实现循环

#include 
int main()
{ 
   int i=1,sum=0;   //赋初值
   do 
    {
       sum=sum+i;   
       i++;            // 条件值自增1
    }while(i            
关注
打赏
1658017818
查看更多评论
0.0385s