c语言输出正数
A. c语言整数输出
/*我是新手写出来的可能不太好,但是能满足你的要求,比较符合新手吧*/
#include<stdio.h>
voidmain()
{
inta,b,c,d,e,n;
scanf("%5d",&n);
a=n/10000;
b=(n/1000)%10;
c=n%1000/100;
d=(n%100)/10;
e=n%10;
if(a==0&&b==0&&c==0&&d==0)printf("1位 %d ",e);
elseif(a==0&&b==0&&c==0)printf("2位 %d%d ",d,e);
elseif(a==0&&b==0)printf("3位 %d%d%d ",c,d,e);
elseif(a==0)printf("4位 %d%d%d%d ",b,c,d,e);
elseprintf("5位 %d%d%d%d%d ",a,b,c,d,e);
}
B. C语言中,如何以"整数"方式和"字符"方式输出字符
只要按规定的输出格式输出就可以了,整数的输出格式是%d,字符的输出格式是%c
字符按整数输出时,输出的是字符在ASCII码表中对应的数值。
例如:
char ch='a';
printf("%d %c",ch,ch);
输出结果为97 a
%d是按整数输出,输出字符a在ASCII码表中对应的数97,
%c是按字符输出,输出字符a
C. C语言编程 输入一个整数,输出整数的位数,用while函数
/*简单一点,能看懂不?*/
#include
<stdio.h>
int
main()
{
int
i=0,n;
printf("输入整数:");
scanf("%d",&n);
while(n!=0)
{
n=n/10;
i++;
}
printf("是一个%d位的数\n",i);
return
0;
}
D. C语言第五题,怎么让它输出整数部分
是浮点型数据以整形输出吧?
最为简单的是类型强转如如(int)(1.1111)为1。
还有一种是系统默认的转换,即将小数部分截去,保留整数部分,如1.1转换为1
最后一种是通过编码手段获取比如
float x=1.11;
int s=x%10;//取到的整数部分 对于11.11以上的要使用循环
x = x/10;
E. 用C语言编写程序从键盘输入一个正整数数n,输出n!
编程实现计算n!,也就是n*(n-1)*(n-2)*....*1,可以通过递归函数来实现,具体实现方法:
#include <stdio.h>
int Func(int n)
{
if(n < 2)
return 1;
else
return n*Func(n-1);
}
void main()
{
int n =0,m=0;
printf("请输入一个正整数:")
scanf("%d",&n);
m=Func(n);
printf("%d!=%d
",n,m);
}
在以上程序代码中,Func()为递归函数,主函数main()中接收键盘输入整数值后,调用Func()递归函数,首层m=n*(n-1)!,继续递归调用,m=n*(n-1)(n-2)!,这样逐层递归,直到计算出N!。
程序输出结果如下:
(5)c语言输出正数扩展阅读:
所谓n的阶乘就是从1到n的乘积,所以除了递归法来实现以外,其实我们也可以通过一个for循环,从1到n依次求积同样可以达到计算n!的目地。
具体实现代码如下:
#include <stdio.h>
int main() {
int n,i,s=1;
scanf("%d",&n);
for(i=1;i<=n;i++)//for循环求累积
s=s*i;
printf("%d ",s);
return 0;
}
/*
运行结果:(例如求5的阶乘)
5
120
*/
F. 用C语言输入n个整数,并输出,怎么做
用标准输入输出函数,考虑到有多个数字,使用在for循环输入输出
#include<stdio.h>
voidmain()
{
intnum[1000],n,i;
printf("要输入数字的个数:");
scanf("%d",&n);
//输入n个数字
for(i=0;i<n;i++)
{
printf("输入第%d个数:",i+1);
scanf("%d",&num[i]);
}
//输出n个数字
for(i=0;i<n;i++)
printf("%d",num[i]);
}
忘采纳
G. c语言中实现输入一个数字字符,然后转换成整数数字输出.怎么做
字符串转整数可以有两种方法:
1.使用c语言自带的库函数:atoi。
函数原型:int atoi(const char *nptr);
功能:把字符串转成整型数。
例如:
#include<stdlib.h>
#include<stdio.h>
intmain(void)
{
intn;
char*str="12345";
n=atoi(str);
printf("int=%d ",n);
return0;
}
/*
输出:
int=12345
*/
2.可以自己编写一个转换函数:
#include<stdio.h>
#include<stdlib.h>
intatoi(char*s)
{
intt=0;
while(*s){
t=t*10+*s-'0';
s++;
}
return(t);
}
intmain()
{
chara[]="12345";
intn=atoi(a);
printf("n=%d",n);
return0;
}
/*
输出:
n=12345
*/
H. C语言程序设计中如何输出一个64位的整数
1、ANSI C99标准中并没有64位整数类型。但是,许多实际的编译器,都实现了对64位整数类型的支持。因为没有这方面的标准,所以具体的语法描述方式略有不同,一般Windows平台,用__int64的关键字,而Linux平台则使用long long的描述方法。
2、有人做了测试,如下图所示:
综合上图可以得出如下几点:
a:long long定义方式可以用于gcc/g++,不受平台限制,但不能用于VC6.0。
b:__int64是Win32平台编译器64位长整型的定义方式,不能用于Linux。
c:“%lld”用于Linux i386平台编译器,”%I64d”用于Win32平台编译器。
d:cout只能用于C++编译,在VC6.0中,cout不支持64位长整型。
3、如果要使用64位的整数,尽量使用最新的编译器,Windows平台,尽量使用VS的较新版本,Linux平台,建议将gcc/g++升级到最新版本。
I. C语言,printf输出实数时只保留整数可以用%d输出么
通常是不行的
比如:
float a=5.6;
printf("%d",a);这是不行的
但是,如果要,一定要强制转换,上面的形式是不会强制转换的
float a=5.6;
printf("%d",(int)a);这样就行了
float一般占四字节,int一般占2字节,size不同的数是不能乱输的,不然数据丢失是肯定的
J. c语言中如何将字符串转化成整数型并输出
c语言中,可以使用atoi()函数将字符串转化成整数型并输出。
atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中。int atoi(const char *nptr) 函数会扫描参数 nptr字符串,会跳过前面的空白字符(例如空格,tab缩进)等。
如果 nptr不能转换成 int 或者 nptr为空字符串,那么将返回 0 。特别注意,该函数要求被转换的字符串是按十进制数理解的。atoi输入的字符串对应数字存在大小限制(与int类型大小有关),若其过大可能报错-1。
(10)c语言输出正数扩展阅读:
C语言常用函数:
1、int abs(int i)
返回整型参数i的绝对值。
2、double cabs(struct complex znum)
返回复数znum的绝对值。
3、double fabs(double x)
返回双精度参数x的绝对值。
4、long labs(long n)
返回长整型参数n的绝对值。
5、double exp(double x)
返回指数函数ex的值。
6、double frexp(double value,int *eptr)
返回value=x*2n中x的值,n存贮在eptr中。
7、double ldexp(double value,int exp)
返回value*2exp的值。
8、double log(double x)
返回logex的值。
9、double log10(double x)
返回log10x的值。
10、double pow(double x,double y)
返回x^y的值。