当我输入10的时候为什么答案会是11
最后是else printf("%d\n",a--);
那else呢 不是有一个a--吗?还有 输入11的时候 结果就是13了 这怎么解释
追答刚才没看到else printf("%d\n",--a);如果那样的话,当你输入11时,11>10,if成立,此时a=12;输出时++a,此时a自加1,变为13。还有当输入10时,答案是10,你可以运行一下。
本回答被提问者采纳main() { int a; scanf("%d",&a); if(a++>10) printf("%d\\n",++a...
看错了,不好意思,上面的仁兄是对的,当a=10的时候执行if,a++是先比较后加10不大于10,if不成立,但a还是加1,if执行完a是11,然后执行else,同上a--是先输出a的值,再对a减1 。a=11的时候执行if,还是先比较11后相加,11大于10,然后a加1,if语句执行完a是12再执行if后面的printf,++...
main() { int a ; scanf("%d",&a); if(a++<9)printf("%d\\n",a); el...
在if的时候a=9,所以进入else。但是在a++<9返回值之前a=9,返回值之后a=10,这是在进入else之前完成的。在else里输出时a=10,输出之后a=9 其实a++这种++在右的,就是先用再加,相对的++a则是先加再用
C语言判断输入的数是三位数并且将其倒序输出
include<stdio.h>int main(){ int a; printf("请输入:"); scanf("%d",&a); if(a\/100>0&&a\/1000==0){ a=a\/100+a\/10%10*10+a%10*100; printf("是三位数,倒序为%d\\n",a); } else printf("不是三位数\\n"); return 0;} ...
...a;int i; printf("请输入一个数:\\n"); scanf("%d",&a); for(i...
printf("因子为:\\n");} 这个语句多了个},书写要正确。
...main() { int n,i,d,s; int a[100]; while(scanf("%d",&n)!=EOF...
while(scanf("%d",&n)!=EOF)后面没有分号,即视为对下一个while语句的无限执行
用c语言编程?(输入一个四位数,求出它的个位、十位、百位、千位)_百度...
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;这种方法...
c语言程序设计大赛试题
int main() { int num;printf("请输入您的数字:");scanf("%d", &num);if(num % 11 == 0) { printf("%d\\n", num);} else { int a[10] = {0};int ti = 10, i = 0, nable = 0;while(num \/ ti != 0) { a[i] = num % ti;i++;num = num \/ ti;} a[i] ...
输入10,则输出是
输入10,则输出11 解析:输入10,a++的值是10,然后a的值为11,语句if(a++>10)的值为假,所以执行else分支,a--的值为先取a的值,然后a的值减1,所以结果为11
...a; printf("input a number\\n"); scanf("%d",&a); printf("%ld",a...
c语言规定:对于long型数据的输入,必须使用%ld 所以你的scanf("%d",&a) 要改成scanf("%ld",&a)
while((scanf("%d",&a))!='\\n')这句哪错了
输入成功,返回1,输入失败,例如没有拍入 整型,却拍入了字母,返回0,如果 没给数,拍了回车,则会等待 输入。 所以 无论何种情况,不会 返回 '\\n'.即使是 scanf("%c",&a) ,也不会 返回 '\\n'.这样简单:char a[80];printf("input some digits:");gets(a);printf("%d",strlen(a...