A. 用c语言编程:输入一个四位数,求出它的个位、十位、百位、千位
C代码:---------------------
int a;
scanf("%d",&a);
printf("个位:%d,十位:%d,百位:%d,千位:%d",a%10,a%100/10,a%1000/100,a/1000)
--------------------------------
VC++中代码如下:
#include "stdafx.h"
#include <stdlib.h>
int main(int argc, char* argv[])
{
int a;
scanf("%d",&a);
printf("个位:%d,十位:%d,百位:%d,千位:%d",a%10,a%100/10,a%1000/100,a/1000);
system("pause");
return 0;
}
C语言有以下几种取整方法:
1、直接赋值给整数变量。如:
int i = 2.5; 或 i = (int) 2.5;
这种方法采用的是舍去小数部分,可以用于你的问题。
2、C/C++中的整数除法运算符"/"本身就有取整功能(int / int),而下面介绍的取整函数如桥返回值是double。整数除法对正数的取整是舍去小数部分,但是整数除法对负数的取整结果和使用的C编译器有关。
3、使用floor函数。floor(x)返回的是x的整数部分。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函数。ceil(x)返回的是不大于x的最冲橡态小整数。如:
ceil(2.5) = 2
ceil(-2.5) = -2
floor和ceil对于正数散源没有区别,但是对于负数结果不同。floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。
B. c语言如何编程,能够输入一个整数,得到该整数十位上的数字
假设输入的整数放到变量x中,则语句x/10%10即是十位上的数字,代码如下:
#include<stdio.h>
intmain(void)
{
intx;
printf("输入一个整数:");
scanf("%d",&x);
printf("%d的十位上的数字是:%d ",x,x/10%10);
return0;
}