从键盘中获取输入4位数各自的ASCII值

#include <stdio.h>

/*
从键盘输一个4位数,实现将该4位数中的每一个数字转换为对应的字符,最后输出他们的ASCII码
*/
int main(int argc, char **argv)
{
  int num ;//short num=4352;
  char ge, shi, bai, qian;

  printf("请输入一个四位数!\n");
   scanf("%d",&num);

  if (num > 1000 && num < 9999)//对输入的数num进行判断是否是四位数
  {
    /*
    //这里加上48是为了把ge变成对应的char数字,
    比如个位是int类型的数字2,  
    而char类型中 2 代表的ascii是 50 (48+2)
    所以也就是 ge='0'+2 才能代表char中的 2
    */
    ge = 48 + num % 10; //  等价于 ge = '0' + num % 10;         
    shi = 48 + (num / 10) % 10;// 435.2%10=5
    bai = 48 + (num / 100) % 10;// 43.52%10=3
    qian = 48 + (num / 1000) % 10;// 4.352%10=4;
  }
  
  printf("千位数字是:%c\n",qian);//按照字符型的格式输出 
  printf("百位数字是:%c\n",bai);
  printf("十位数字是:%c\n",shi);
  printf("个位数字是:%c\n",ge);

  printf("个位的16进制ascii码是:%#x\n", ge);
  printf("十位的16进制ascii码是:%#x\n", shi);
  printf("百位的16进制ascii码是:%#x\n", bai);
  printf("千位的16进制ascii码是:%#x\n", qian); // 这里输出了16进制的ascii值。

  return 0;
}
/*
首先对输入的num进行判断是否是四位数,否则出现输入。
判断四位数的条件是  num是不是位于1000到9999之间。
c语言中  /  和  % 是不一样的
*/

当在 C 语言中使用 / 和 % 运算符时,它们分别用于进行除法和取模运算。

1,除法运算符 (/):
/ 运算符用于执行除法运算,将一个数除以另一个数,并返回商。如果两个操作数都是整数,则得到的结果也是整数

int a = 10;
int b = 3;
int result = a / b; // result 的值为 3

注意:如果操作数为浮点数,则结果也为浮点数。

float c = 10.0;
float d = 3.0;
float result = c / d; // result 的值为 3.333333

2.取模运算符 (%):
% 运算符用于执行取模运算,计算一个整数除以另一个整数后的余数。

int a = 10;
int b = 3;
int result = a % b; // result 的值为 1

取模运算符常用于判断一个数是否为另一个数的倍数,或者用于对数字进行循环。

int number = 15;

if (number % 5 == 0) {
    printf("number 是 5 的倍数");
} else {
    printf("number 不是 5 的倍数");
}

取模运算符也可以与负数一起使用,结果的正负取决于被取模数的符号。

int a = -13;
int b = 5;
int result = a % b; // result 的值为 -3

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值