【牛客网题目解析:从入门到精通】173道基础题详解 (第二期)

在这里插入图片描述

😁本文作者:大家好,我是原始豌豆,欢迎来到牛客网刷题解析第二期,感谢你阅读本文欢迎评论,收藏,点赞哦。
😂内容专栏:这里是《牛客网在线编程》专栏,笔者用重金(时间和精力)打造,每道题目提供多种解法,从基础到拓展,希望可以帮到读者们。
😘写作不易:本文对每道题目提供了多种解法并加上了详细的注释,意在帮助读者锻炼思维灵活性,提高分析、解决问题的能力💓)。
    牛客网刷题解析第三期请点这里🎈🤺

开端
     在这篇文章中,我将分享刷题过程中的一些感悟、技巧和策略。我会详细解析173道语法题,通过实例来展示如何理解和运用C语言的语法规则。同时,我也会分享一些个人的学习心得和经验,希望能帮助到同样热爱编程的你。

     挑战自己的极限,收获编程的乐趣,让我们一起踏上这段奇妙的C语言刷题之旅吧!!!!

题目目录

牛客网语法篇基础语法16-30题(C语言实现)
题目网址链接请点这✌️
标注*符号的题目为重点题目
本页目录跳转请点下方

BC16 十六进制转十进制*
BC17 缩短二进制
BC18 牛牛的空格分隔
BC19 牛牛的对齐
BC20 进制A + B
BC21 牛牛学加法
BC22 牛牛学除法
BC23 牛牛学取余
BC24 浮点数的个位数字*
BC25 牛牛买电影票
BC26 计算带余除法
BC27 整数的个位
BC28 整数的十位
BC29 开学?*
BC30 时间转换

题目

>BC16 十六进制转十进制

在这里插入图片描述
解法一
  直接利用打印十进制的%d格式符打印16进制数,会自动转换为10进制

#include <stdio.h>
int main() {
   
    int num = 0xABCDEF;
    printf("%15d", num);// 在%和格式字符之间插入一个整型常数来指定输出的宽度n。//不足用空格补齐,右对齐
    return 0;
}

解法二
   用数学上进制转换的方法

#include <stdio.h>
#include<math.h>
int main() {
   
    int j = 0; int k = 0;//j控制16进制的权值从右向左是从零开始的。 
    int num[6] = {
    0xA, 0xB, 0xC, 0xD, 0xE,0xF };
    for (int i = 5; i >= 0; i--) {
   
        num[i] *= (int)pow(16, j++);
        k = k + num[i];//k用于累加每位转换后对应的十进制数字
    }
    printf("%15d", k);
    return 0;
}

BC17 缩短二进制

在这里插入图片描述
解法一

//补充知识:
//   o 以八进制形式输出无符号整数(不输出前缀O)
//   x 以十六进制形式输出无符号整数(不输出前缀Ox)
//   X 以十六进制形式输出无符号整数(不输出前缀OX)(大写)
//使用修饰符“#”控制前导显示:
//   # 对c,s,d,u类无影响;对o类, 在输出时加前缀0。对x类,在输出时加前缀0x;
//注意:题目要求,十六进制,字母大写,所以,,,,,,对X类,在输出时加前缀0X。
#include <stdio.h>
int main()
{
   
    int a = 1234;
    printf("%#o %#X", a, a);//使用 printf 函数,以 %#o 和 %#X 格式打印变量 a 的值。
    return 0;
}

解法二
  题目要显示前导0和前导0X,那我们直接在%的前面加上前导0和前导0X就行了

#include <stdio.h>
int main()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值