带你刷(牛客网)C语言百题(第四天)
习题一:
描述 读入 3 个整数,牛牛尝试以后两个数字占 8 个空格的宽度靠右对齐输出。 输入描述: 输入三个整数,用空格隔开。 输出描述: 输出 3 个整数以第二三个数字占 8 个空格靠右对齐输出 示例1 输入:2 7 5 输出:2 7 5
#include <stdio.h> int main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); // 方法1:就数8个空格 printf("%d %d %d",a,b,c); // 方法2:利用列宽:%m.nd,m代表列宽,n代表小数点保留几位 // 注意:使用列宽默认是整体靠右对齐的,要想靠左对齐加上 - 即可 printf("%-8d%-8d%-8d",a,b,c); return 0; }
习题二:
描述 输入一个十六进制数a,和一个八进制数b,输出a+b的十进制结果(范围-231~231-1)。 输入描述: 一行,一个十六进制数a,和一个八进制数b,中间间隔一个空格。 输出描述: 一行,a+b的十进制结果。 示例1 输入:0x12 05 输出:23 备注: 十六进制Hexadecimal一般以0x开头,例如0xFF。八进制Octal,一般以0开头,例如07。
#include <stdio.h> int main() { int x,y; // %x:十六进制 %o:八进制 scanf("%0x%o",&x,&y); // 计算机里面都是二进制,所以可以直接相加,以%d十进制的形式打印出来 printf("%d ",x+y); return 0; }
习题三:
描述 给你两个整数,要求输出这两个整数的和 输入描述: 输入两个整数 a, b (0 <= a, b <= 1000) 输出描述: 输出一个整数 示例1 输入:1 2 输出:3 补充:加(+)、减(-)、乘(*)、除(/)、取余(%),都可以采用以下的运算处理方式!
#include <stdio.h> #define SUM(x,y) ((x)+(y)) int Add(int x,int y){ return x+y; } int main() { // 方法1:直接写 int x,y; scanf("%d%d",&x,&y); printf("%d ",x+y); // 方法2:封装成函数,建议以后都这样写,养成好习惯 int sum = Add(x,y); printf("%d ",sum); // 方法3:定义宏 printf("%d ",SUM(x,y)); return 0; }
习题四:
描述 给定一个浮点数,要求得到该浮点数的个位数。 数据范围: 0 < n ≤200 输入描述: 一行,包括一个浮点数。 输出描述: 一行,包含一个整数,为输入浮点数对应的个位数。 示例1 输入:13.141 输出:3
#include <stdio.h> int main() { float x = 0.0; scanf("%f",&x); // 先进行强制类型转换,在进行取余处理 printf("%d ",(int)x % 10); return 0; }
习题五:
描述 牛牛正在给他的朋友们买电影票,已知一张电影票价是100元,计算 x 位朋友的总票价是多少? 输入描述: 输入一个正整数 x ,表示牛牛的朋友个数 输出描述: 输出总票价 (牛牛不需要给自己买票) 示例1 输入:1 输出:100
#include <stdio.h> int main() { // 输入x为朋友 int x=0; scanf("%d",&x); // 总票价 printf("%d ",100*x); return 0; }
习题六:
描述 给定两个整数a和b (0 < a,b < 10,000),计算a除以b的整数商和余数。 输入描述: 一行,包括两个整数a和b,依次为被除数和除数(不为零),中间用空格隔开。 输出描述: 一行,包含两个整数,依次为整数商和余数,中间用一个空格隔开。 示例1 输入:15 2 输出:7 1
#include <stdio.h> int main() { int x,y; scanf("%d%d",&x,&y); // 利用 / 得到商,利用 % 得到余数 printf("%d %d ",x/y,x%y); return 0; }
结束语
今天的分享就到这里啦!快快通过下方链接注册加入刷题大军吧!各种大厂面试真题在等你哦! 💬刷题神器,从基础到大厂面试题👉
下一篇:
彻底搞懂理解Java,IO流