55问答网
所有问题
c语言的一个小问题 第一个输出为啥是0,9<10不对吗
如题所述
举报该问题
其他回答
第1个回答 2017-04-17
在早期的双字节int平台下,这么大的数已远远超出了int变量能表达的范围,用int就无能为力了。但可以用long int类型,它是4字节的可以表达到10位十进制数。在时下的4字节int平台下,尽可用int变量操作,因为4字节int变量已能表达10位十进制数。
第2个回答 2017-04-17
--num,num先自减1,再判断--num<num是否为真
num先自减1,变成9
判断--num<num,此时num已经是9了,而不是10,因此为假,值为0
你的错误在于仍认为num的值是10
本回答被提问者和网友采纳
相似回答
一个
很简单的
c语言问题
?
为什么输出
为0
答:
还有,double 数据不能%d来输入,否则出错
这道
C语言
题目
的输出
结果
为什么是0
?
答:
int是4个字节,所以
第一个
字节是39H,第二个字节
是0,
第三个字节是0,第四个字节是0 s->i[1]=0x38;//对数组i的第二个元素赋值 同样,第五个字节是38H,第六个字节是0,第七个字节是0,第八个字节是0 printf("%x\n",s->c[1]);//
输出的
是第二个字节的内容,自然是0 ...
刚学
c语言,
这个
输出
值
为什么是0
?
答:
scanf语句错误,应该改为:scanf(“%f%f%f”,&v,&n,&m)才能让系统读入值,否则的话,v,n,,m的值
都是零,
所以最后总和也为0.你可以用一下下面的代码。include<stdio.h> include<math.h> int main(){ float v, n, m;float a = 3.5;float b = 3.5;float c = 3.5;scanf("%f%...
c语言
为什么输出
的时候
第一个
字符永远是个文字或者?。。而不是字符...
答:
{ void qipao(char array[]); //声明,接收的是数组 char a[10];int i;printf("请输入十个字符:") ; //空格也算一个字符,所以输入字符时,相邻字符间不用加空格 for(i=
0;
i<=9;i++)scanf("%c",&a[i]);qipao(a);printf("这十个字符进行从小到大的排序后顺序为:\n")...
C语言我下面这题,我if(a)
为什么输出
来
的是0
而不是
1,C语言
他是怎么判断的...
答:
printf("
是0
\n");} 你
的问题
::那如果我a=2 后定义a=3 if(a)printf(“是2”);else printf(“是3”)
;为什么
又是2了呢 这是个最基本的了,条件判断if!a=2;a=3;if(a) //此时a=3,相当于if(1),条件为真,肯定打印1啦,建议看看C吧 printf("是1\n");else printf("是0...
大家正在搜
c语言中第一个字符必须是
c语言第一个程序
c语言输入输出
c语言double类型输出
c语言属于什么语言
c语言的基本单位是
c语言输出
c语言逆序输出
c语言输出字符
相关问题
·C语言,算法,数据结构。专业人士,请问,我这个栈为什么不是...
C语言,算法,数据结构。专业人士,请问,我这个栈为什么不是输...
c语言小问题,我写的将一个长度为10的数组倒序排列的code...
哪位大神帮我看一下这个程序哪里错了? C语言问题,输入一个整...
C语言将10个数字从小到大排列,为什么我的代码输入是1,2,...
C语言编程输出斐波那契数列第n项的值。多组,第一行输入一个n...
关于C语言的问题,为什么 别的对的 输入 1 2 3 4 5...
c语言作业,给定一个10元素数组,按元素从小到大进行排序。从...