有关switch的用法以及自增自减运算符的运算

作业1:展开的思路,按要求分析以下代码。

要求不要放到编译器中运行,自己手动分析出每条输出语句的结果,分析出结果后,再在编译器中执行验证结果;

void main()
{
    int num,num2,num3;
    num = 1;
    num2 = 2;
    num3 = 3;
    num = ++num2 + ++num3;        
    printf("\n%d,%d,%d",num,num2,num3);//输出结果1 num=7 num2=3 num3=4

    num = num2++ + num3++;
    printf("\n%d,%d, %d",num,num2,num3); //输出结果2 num = 7 num2 = 4 num3 = 5;

    num = ++num2 > num3++;
    printf("\n%d, %d, %d" ,num,num2,num3); //输出结果3 num = 0 num2 = 5 num3 = 6;

    num = num2-- && --num3;
    printf("\n%d,%d,%d",num,num2,num3); //输出结果4  num = 1 num2 = 4 num3 = 5 

    num = num2 > num3 ? num2++ : num3++;
    printf("\n%d,%d,%d" ,num,num2,num3); //输出结果5 num = 5 nun2 = 4 num3 = 6
}
 

 作业2:作业二:编程实现:输入华氏温度F ,要求输出对应的摄氏温度C要求结果保留两位小数。计算公式为: C = 5/9*(F-32);

代码:

 int main(int argc, const char *argv[])
{  int F;                                 // 定义一个整形变量F;
    float C;                              // 定义一个实型变量C;
    printf("请输入华氏温度F:");
    scanf("%d",&F);
    printf("摄氏温度C=%.2f\n",C=(F-32)*5/9);
    return 0;
}

 作业三:使用switch实现简易计算器:例如,输入一个表达式: 3+5, 程序输出结果为8;

 代码:

#include<string.h>
#include<stdlib.h>
#include<stdio.h>

int main(int argc, const char *argv[])
{  int m,n;                                //定义两个整数m,n;
    char ch;                               //定义一个运算符号;
    printf("请输入两个整数:");
    scanf("%d%c%d",&m,&ch,&n);             //输入计算的表达式;
    switch(ch)
    {
    case '+':
        printf("%d%c%d=%d\n",m,ch,n,m+n);

           break;
    case '-':
         printf("%d%c%d=%d\n",m,ch,n,m-n);
           break;
    case '/':
         printf("%d%c%d=%d\n",m,ch,n,m/n);
           break;
    case '*':
         printf("%d%c%d=%d\n",m,ch,n,m*n);
           break;
    }
    return 0;
}

#include<string.h>
#include<stdlib.h>
#include<stdio.h>

int main(int argc, const char *argv[])
{  int m,n;                                //定义两个整数m,n;
    char ch;                               //定义一个运算符号;
    printf("请输入两个整数:");
    scanf("%d%c%d",&m,&ch,&n);             //输入计算的表达式;
    switch(ch)
    {
    case '+':
        printf("%d%c%d=%d\n",m,ch,n,m+n);

           break;
    case '-':
         printf("%d%c%d=%d\n",m,ch,n,m-n);
           break;
    case '/':
         printf("%d%c%d=%d\n",m,ch,n,m/n);
           break;
    case '*':
         printf("%d%c%d=%d\n",m,ch,n,m*n);
           break;
    }
    return 0;
}
作业四:使用switch实现, 要求输入一个日期,输出该日期是对应今年的第几天;

                                         例如输入: 2023 1 20输出结果: 该日期是今年第20天。

 代码:

#include<string.h>
#include<stdlib.h>
#include<stdio.h>

int main(int argc, const char *argv[])
{
    int year,month,date;               //定义三个整型数据,分别表示年/月/日;
    printf("请输入年/月/日:");
    scanf("%d/%d/%d",&year,&month,&date);
    switch(month)
    {
    case 1:printf("该日期是今年第%d天\n",month=date);       // 一月份的日期就表示今年的多少天;
break;
    case 2:printf("该日期是今年第%d天\n",month=date+31);   //二月份的日期加上整个一月份的天数即表示今年的多少天;
break;
    case 3:printf("该日期是今年第%d天\n",month=date+59);
break;
    case 4:printf("该日期是今年第%d天\n",month=date+90);
break;
    case 5:printf("该日期是今年第%d天\n",month=date+130);
break;
    case 6:printf("该日期是今年第%d天\n",month=date+161);
break;
    case 7:printf("该日期是今年第%d天\n",month=date+191);
break;
    case 8:printf("该日期是今年第%d天\n",month=date+222);
break;
    case 9:printf("该日期是今年第%d天\n",month=date+252);
break;
    case 10:printf("该日期是今年第%d天\n",month=date+283);
break;
    case 11:printf("该日期是今年第%d天\n",month=date+313);
break;
    case 12:printf("该日期是今年第%d天\n",month=date+343);
break;
    }
    return 0;
}
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值