第六题 牛牛学取余
题目
题目描述
输入两个整数a, b, 输出a 除以b的余数,5除以2的余数为1,10除以4的余数为2
输入描述:
输入两个整数,在int范围内
输出描述:
输出一个整数
示例1
输入
5 2
输出
1
讲解:
这道题目考察了“ % ”的使用方法:
取余运算符,作用于两个整型数(正整数、负整数),运算结果是两数相除后的余数,运算结果为整数。要求:运算结果正负号与被除数符号一致并且被除数小于除数时,运算结果等于被除数。
AC:
C语言:
#include<stdio.h> int main() { int a, b ; scanf("%d%d",&a, &b) ; int c = a%b ; printf("%d\n",c) ; return 0 ; }
c++
#include<iostream> using namespace std ; int main() { int a, b ; cin >> a >> b ; cout << a%b << endl ; return 0 ; }
第七题 整数的个位
题目
题目描述
输入一个整数a, 求个位数
输入描述:
输入一个整数,在int范围内
输出描述:
输出一个整数
示例1
输入
102
输出
2
讲解:
这道题目就稍微有点意思啦,题目问的是个位数,我们就要想,怎么才能算到个位数,这时我们发现,一个整数他对10去取余,取余的结果就是这个数的个位数了,那么同理可得,如果我们对100去进行取余,那么我们将得到后两位数了。
AC:
C语言:
#include <stdio.h> int main () { int a, b ; scanf("%d",&a) ; b=a%10 ; printf("%d",b) ; }
c++
#include<iostream> using namespace std ; int main () { int a, b ; cin >> a ; b=a%10 ; cout << b << endl ; }
第八题 整数的十位
题目
题目描述
输入一个整数,求其十位数
输入描述:
输入一个整数,在int范围内
输出描述:
输出一个整数
示例1
输入
123
输出
2
讲解:
根据上一题我们讲到的,一个数%10得到的是个位,那么我们如果想得到十位应该怎么办呢?这时我们就应该想着如何去退位,也就是除以10,我们没除一个10我们的总位数就退一位,这样我们就可以去求得十位了。
AC:
C语言:
#include <stdio.h> int main() { int a; scanf("%d",&a); printf("%d",a/10%10); return 0; }
c++
#include<iostream> using namespace std ; int main() { int a ; cin >> a ; cout << a/10%10 << endl ; return 0 ; }
第九题 浮点除法
题目
题目描述
输入两个整数a, b, 输出a除以b的值,保留三位小数
输入描述:
输入两个整数,在int范围内
输出描述:
输出一个浮点数,保留三位小数
示例1
输入
5 2
输出
2.500
讲解:
在这到题目中我们将用到强制转换的知识,我们在编程的时候可以使用强制类型转换运算符来把值显式地从一种类型转换为另一种类型,其使用方法如下:
(type_name) expression
这时我们只需创建两个整形的变量,在最后输出时用强制转换去转换为float类型即可。
AC:
C语言:
#include<stdio.h> int main() { int a , b ; scanf("%d%d",&a, &b) ; printf("%.3f",(float)a/b) ; return 0 ; }
c++
#include<iostream> using namespace std; int main() { int a , b ; cin >> a >> b ; printf("%.3f",(float)a/b) ; return 0 ; }
第十题 倒序
题目
题目描述
输入三个数,反序输出这三个数。
输入描述:
输入三个整数a, b , c 以空格隔开 0<=a,b,c<=231−10 <= a, b,c <= 2^{31}-10<=a,b,c<=231−1
输出描述:
输出一行,三个整数,以空格隔开
示例1
输入
2 6 9
输出
9 6 2
讲解:
在这里,这道题目我提出两个思路,第一个就是直接创建三个变量,将三个变量输入与输出顺序反过来即可;第二个就是创建一个数组,利用for循环去写,先从前往后去储存,然后从后往前去输出。这两种方法都可以解决这个问题 。
AC:
C语言
方法一:
#include<stdio.h> int main() { int a, b, c ; scanf("%d%d%d",&a,&b,&c) ; printf("%d %d %d\n",c,b,a) ; return 0 ; }
方法二:
#include<stdio.h> int main() { int a[10] ; int i ; for(i=0; i<3; i++) { scanf("%d",&a[i]) ; } for(int i=2; i>=0; i--) { printf("%d ", a[i]) ; } printf("\n") ; return 0 ; }
c++
思路一:
#include<iostream> using namespace std ; int main() { int a, b, c ; cin >> a >> b >> c ; cout << c << " " << b << " " << a << endl ; return 0 ; }
思路二:
#include<iostream> using namespace std ; int main() { int a[10] ; for(int i=0; i<3; i++) { cin >> a[i] ; } for(int i=2; i>=0; i--) { cout << a[i] << " " ; } cout << endl ; return 0 ; }