首页 > 编程语言 >C语言编程—判断语句

C语言编程—判断语句

时间:2023-05-23 22:33:05浏览次数:30  
标签:语句 case int 编程 C语言 break printf 表达式

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

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

下面是大多数编程语言中典型的判断结构的一般形式:

C语言编程—判断语句_#include

判断语句

C 语言提供了以下类型的判断语句。点击链接查看每个语句的细节。

C语言编程—判断语句_跳出循环_02

? : 运算符(三元运算符)

我们已经在前面的章节中讲解了 条件运算符 ? :,可以用来替代 if...else 语句。它的一般形式如下:

Exp1 ? Exp2 : Exp3;

其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。

? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个表达式的值。

C语言编程—判断语句_#include_03

#include<stdio.h>
 
int main()
{
    int num;
 
    printf("输入一个数字 : ");
    scanf("%d",&num);
 
    (num%2==0)?printf("偶数"):printf("奇数");
}

举一个三目(元)运算的例子:

#include <stdio.h>

int A=10;
int B=20;
char buy;
int sum,number;

int main(){
    printf("以下是本店的商品及价格:\n A 商品每个十元;\n B 商品每个二十元;\n\n");
    printf("请输入你所需的产品(A 或 B):");
    scanf("%c",&buy);
    printf("请输入所需的数量:");
    scanf("%d",&number);
    sum=buy=='A'?A*number:B*number;
    printf("\n你所需要的%d个%c商品总共%d元。\n",number,buy,sum);
    return 0;
}

switch语句一般形式:

switch(表达式)
{
    case 常量表达式1:语句1;
    case 常量表达式2:语句2;
    ...
    default:语句n+1;
}

意思是先计算表达式的值,再逐个和 case 后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行 default 后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有 case 后的语句。

与 if 语句的不同:if 语句中若判断为真则只执行这个判断后的语句,执行完就跳出 if 语句,不会执行其他 if 语句;而 switch 语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有 case 语句。在每一 case 语句之后增加 break 语句,使每一次执行之后均可跳出 switch 语句,从而避免输出不应有的结果。

#include <stdio.h>

int main()
{
    int a;
    printf("input integer number: ");
    scanf("%d",&a);
    switch(a)
    {
        case 1:printf("Monday\n");
        break;
        case 2:printf("Tuesday\n");
        break;
        case 3:printf("Wednesday\n");
        break;
        case 4:printf("Thursday\n");
        break;
        case 5:printf("Friday\n");
        break;
        case 6:printf("Saturday\n");
        break;
        case 7:printf("Sunday\n");
        break;
        default:printf("error\n");
    }
}

标签:语句,case,int,编程,C语言,break,printf,表达式
From: https://blog.51cto.com/u_15641375/6334930

相关文章

  • C语言--编译过程
              ......
  • 实验4 函数与异常处理编程
    task1print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)答案:不是。line1为内置作用域,line3和line11为全局作用域,line7为局部作用域。task2-1deffunc1(a,b,c,d,e,f):'''返回参数......
  • C语言--柔性数组
    柔性数组柔性数组的大小是未知的,数组大小是可以调整的。结构体中最后一个元素允许是未知大小的数组。#inclide<stdio.h>#include<string.h>#include<errno.h>typedefstructS{intn;intarr[];//柔性数组成员//intarr[0];//柔性数组成员}S;intmain(){ S*p......
  • 实验4 函数与异常处理编程
    task1print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)运行结果: task2.1deffunc1(a,b,c,d,e,f):return[a,b,c,d,e,f]deffunc2(a,b,c,*,d,e,f):#返回参数a,b,c,d,e,f构成......
  • c语言趣味编程
    求车速1#include<iostream>2usingnamespacestd;3intmain()4{5inta[5]={0};6intx,y,i;7for(i=95860;i<=99998;i++)8{9x=i;10for(intj=0;j<5;j++)11{12a[j]=x%10;13......
  • C语言进阶--++/--
    1.++和--操作符对应两条汇编指令--前置--变量自增(减)1--取变量值--后置--去变量值--变量自增(减)1贪心法:++,--表达式的阅读技巧--编译器处理的每个符合应该尽可能多的包含字符--编译器以从左向右的顺序一个一个尽可能多的读入字符--当读入的字符不可能和已......
  • 基本的SELECT语句
    1.SELECT语句1.1SELECT...mysql>SELECT1;+---+|1|+---+|1|+---+1rowinset(0.00sec)mysql>SELECT2*3,8;+-----+---+|2*3|8|+-----+---+|6|8|+-----+---+1rowinset(0.01sec)mysql>1.2SELECT...FROMSELECT标识选择哪......
  • 实验4 函数与异常处理编程
    实验结论实验任务1程序源代码print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)运行测试截图问题回答:不是同一个对象的名称。line1是内置作用域,line3和line11是全局作用域,而line7是在inc中的局......
  • 2023.5.23编程一小时打卡
    一、问题描述:定义抽象基类Shape,由它派生出五个派生类:Circle(圆形)、Square(正方形)、Rectangle(长方形)、Trapezoid(梯形)和Triangle(三角形),用虚函数分别计算各种图形的面积,输出它们的面积和。要求用基类指针数组,每一个数组元素指向一个派生类的对象。PI=3.14159f,单精度浮点数计算。输......
  • 实验四 函数与异常处理编程
    print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)1空白2第二行的sum3函数里的sum4第十行的sum任务2deffunc1(a,b,c,d,e,f):return[a,b,c,d,e,f]deffunc2(a,b,c,*,d,e,f):return[......