C语言第2.2关 整型常量

第1关: 两个100年

任务描述:

中共十八大报告提出“两个一百年”奋斗目标:第一个一百年,是到中国共产党成立100年时(2021年)全面建成小康社会;第二个一百年,是到新中国成立100年时(2049年)建成富强、民主、文明、和谐、美丽的社会主义现代化强国。 “两个一百年”奋斗目标,与中国梦一起,成为引领中国前行的时代号召、成为全国各族人民共同的奋斗目标。

,

现在,你幸福的生活在21世纪的某个年度N里,你知道今年是建党多少周年和建国多少周年吗?

输入格式:

一个整数N(N>=2000),代表某个年度数。

输出格式:

两个整数,以空格分隔,分别代表建党周年数和建国周年数。

输入样例:

2049

输出样例:

128 100


任务代码
 
  1. #include<stdio.h>
  2. int main(){
  3. int n;
  4. scanf("%d",&n);
  5. printf("%d %d",n-1921,n-1949);
  6. return 0;
  7. }
相关知识-常量和变量

程序中值不变的量称为常量,常量可分为字面常量和符号常量。字面常量就是直接写出来的一个数据。符号常量是指用一个标识符来代表一个常量。 程序运行的过程中,值可以改变的量称为变量。 每个常量和变量都必须归属一个确定的数据类型,不同类型的常量和变量占据不同大小的存储空间、具有不同的表示范围。 小白弟弟,以上程序中的1921、1949和0都是字面常量,n是变量。


开始你的任务吧,祝你成功!

参考代码:
#include<stdio.h>
int main (){
    int n;
    scanf("%d",&n);
    printf("%d %d",n-1921,n-1949);
    return 0;
}

第2关:答题时间

任务描述:

小白弟弟参加期末考试,于H1时M1分开始答题,于H2时M2分交卷。假设考试在白天进行,时间采用24小时制。请你算算小白弟弟此次考试用了多少分钟。

输入格式:

空格分隔的4个整数,分别表示H1、M1、H2、M2。

输出格式:

一个整数。

输入样例:

8 30 9 10

输出样例:

40


开始你的任务吧,祝你成功!

参考代码:
//请在此输入你的代码
#include<stdio.h>
int main()
{int h1,m1,h2,m2,h3,m3,h4,m4;
scanf("%d %d %d %d",&h1,&m1,&h2,&m2);
h3=60*h1;h4=60*h2;
m3=h3+m1;m4=h4+m2;
printf("%d",m4-m3);
return 0;
}

第3关: 认识整型常量

任务描述:

整型常量有八进制、十进制、十六进制三种表示形式。 编写程序输入三个整数,按要求输出它们的不同表示形式。

输入格式:

以空格分隔的三个整数,其中第1个为十进制数,第2个为八进制数,第3个为十六进制数。

输出格式:

请按输出样例形式输出这三个数的不同表示形式,其中: 第1行输出十进制形式; 第2行输出八进制形式; 第3行输出带前导0的八进制形式; 第4行输出十六进制形式,字母数字小写; 第5行输出十六进制形式,字母数字大写; 第6行输出十六进制形式,字母数字小写,输出前导0x。

输入样例:
 
  1. 2298 04372 0X8FA
输出样例:
 
  1. 2298,2298,2298
  2. 4372,4372,4372
  3. 04372,04372,04372
  4. 8fa,8fa,8fa
  5. 8FA,8FA,8FA
  6. 0x8fa,0x8fa,0x8fa
输入样例:
 
  1. 189 520 3AF
输出样例:
 
  1. 189,336,943
  2. 275,520,1657
  3. 0275,0520,01657
  4. bd,150,3af
  5. BD,150,3AF
  6. 0xbd,0x150,0x3af
任务代码
 
  1. #include<stdio.h>
  2. int main(){
  3. int a,b,c;
  4. scanf("%d%o%x",&a,&b,&c);
  5. printf("%d,%d,%d\n",a,b,c); //十进制形式
  6. printf("%o,%o,%o\n",a,b,c); //八进制形式
  7. printf("%#o,%#o,%#o\n",a,b,c);//八进制形式,带前导0
  8. printf("%x,%x,%x\n",a,b,c); //十六进制形式,字母数字小写
  9. printf("%X,%X,%X\n",a,b,c); //十六进制形式,字母数字大写
  10. printf("%#x,%#x,%#x",a,b,c); //十六进制形式,带前导0x
  11. return 0;
  12. }
相关知识-整型常量
1.整型常量的表示

整型常量在C语言程序中有多种表示方法: (1)十进制整数。 由0~9十个数字表示的整数,逢10进1,整数前不能加前导0。例如:521、-9、0、123、456、2147483647等等。 (2)八进制整数。以数字0开头,由0~7八个数字表示的整数,逢8进1,例如:0521、-04、+0123、556677等等。 (3)十六进制整数。以0x开头,由0~9和A~F十六个数字表示的整数,逢16进1,例如:0x521、-0x9、0X5A6B7F等等。字符X和数字A~F可以大写也可以小写。 (4)字面常量类型认定。C语言对于没有后缀且在int表示范围内的整型常量都视为int型,对于超过此范围的整数根据其大小范围依次认定为unsigned int 、long、unsigned long、long long或unsigned long long型。 (5)L后缀。可以在整型常量的末尾加上字符L或LL,来特别说明这是一个long型或long long型的整型常量,例如521L,034LL, 0xaL等等(L可小写)。 (5)U后缀。可以在一个整型常量的末尾加上字符u或U来特别说明一个无符号整型常量。L、LL和U的位置可以互换。例如:12U、12LU、12ULL都是合法的表示方法。

2.整型数据格式说明符

(1)我们已经知道%d是十进制整数说明符,除此之外,%o是八进制整数说明符,%x是十六进制整数说明符,百分号后面的字母也可以大写。这三种形式可以用于scanf函数中输入相应格式的整数。 (2)语句scanf("%d%o%x",&a,&b,&c);的功能是依次输入十进制、八进制和十六进制三个整数,分别赋值给int型变量a、b和c。 (2)在printf函数中输出整数时有以下多种形式可以选择: %o:以八进制形式输出,%#o表示输出前导0; %x以十六进制形式输出,%#x表示输出前导0x,数字中的字母和前导x都是小写;当以%X或%#X格式输出十六进制数据时,数字中的字母和前导X都是大写。 小白弟弟好,整型常量数据的表示和输入输出的基本规则你清楚了吗?如果有点晕,我们慢慢来,多多练习,熟悉就好了。


开始你的任务吧,祝你成功!

参考代码:
//
#include<stdio.h>
int main(){
 int a,b,c;
    scanf("%d%o%x",&a,&b,&c);
    printf("%d,%d,%d\n",a,b,c);   //十进制形式 
    printf("%o,%o,%o\n",a,b,c);   //八进制形式
    printf("%#o,%#o,%#o\n",a,b,c);//八进制形式,带前导0 
    printf("%x,%x,%x\n",a,b,c);   //十六进制形式,字母数字小写  
    printf("%X,%X,%X\n",a,b,c);   //十六进制形式,字母数字大写
    printf("%#x,%#x,%#x",a,b,c);  //十六进制形式,带前导0x 
    return 0;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值