15.写出下面程序的运行结果_____ #include <stdio.h> main() { int a = 1,b = 2; printf ("%d\n",a=a+); }
求高手指点!!!15.写出下面程序的运行结果_____#include<stdio.h>main(){inta=1,b=2;printf("%d\n",a=a+1,b+a...
求高手指点!!!
15.写出下面程序的运行结果_____
#include <stdio.h>
main()
{
int a = 1, b = 2;
printf ("%d\n",a=a+1,b+a,b+1); }
答案是 2 。为什么会是 2 ?
1. 阅读以下程序:
main ()
{ int a=1 ,b=1, c=1;
if (a= b+ c ) printf ("###\n");
else printf ("***\n");
}
执行后输出结果为( )
A. *** B. ### C. 有语法错误不能通过编译 D. 无输出
答案是B,为什么不是A???
2. 阅读以下程序:
main( )
{ int a = 2, m=2;
if (m++>2) printf ("%d", — — m);
else printf ("%d",m+2);
}
执行后输出结果为( ) A . 5 B. 2 C. 3 D. 4
答案是A为什么不是D ???
7. 阅读以下程序,写出运行结果______
main ( )
{ int x= 1,y=10;
if (x=2 ) y= y+2;
else y= y-2 ;
printf ("%d\n",y);
}
答案是12 ,为什么?
8.阅读以下程序,写出运行结果______
main ( )
{ int i=10;
switch ( i )
{ case 9 :i+=1;
case 10 :i+=1;
case 11:i+=1;
default :i+=1;}
printf ("%d\n", i );
}
答案为13,是怎么算出来的?
9. 运行以下程序段:
int n = 2 ;
while (n — —) ;printf ("%d",n);
执行后输出结果为 ( )
A . 2 B. 1 C. 0 D. —1
答案为D,为什么 ?
10.运行以下程序段:
int n = 0 ;
while (n ++<2) ;
printf ("%d",n);
执行后输出结果为 ( )
A . 0 B. 1 C. 2 D. 3
答案为D,为什么 ? 展开
15.写出下面程序的运行结果_____
#include <stdio.h>
main()
{
int a = 1, b = 2;
printf ("%d\n",a=a+1,b+a,b+1); }
答案是 2 。为什么会是 2 ?
1. 阅读以下程序:
main ()
{ int a=1 ,b=1, c=1;
if (a= b+ c ) printf ("###\n");
else printf ("***\n");
}
执行后输出结果为( )
A. *** B. ### C. 有语法错误不能通过编译 D. 无输出
答案是B,为什么不是A???
2. 阅读以下程序:
main( )
{ int a = 2, m=2;
if (m++>2) printf ("%d", — — m);
else printf ("%d",m+2);
}
执行后输出结果为( ) A . 5 B. 2 C. 3 D. 4
答案是A为什么不是D ???
7. 阅读以下程序,写出运行结果______
main ( )
{ int x= 1,y=10;
if (x=2 ) y= y+2;
else y= y-2 ;
printf ("%d\n",y);
}
答案是12 ,为什么?
8.阅读以下程序,写出运行结果______
main ( )
{ int i=10;
switch ( i )
{ case 9 :i+=1;
case 10 :i+=1;
case 11:i+=1;
default :i+=1;}
printf ("%d\n", i );
}
答案为13,是怎么算出来的?
9. 运行以下程序段:
int n = 2 ;
while (n — —) ;printf ("%d",n);
执行后输出结果为 ( )
A . 2 B. 1 C. 0 D. —1
答案为D,为什么 ?
10.运行以下程序段:
int n = 0 ;
while (n ++<2) ;
printf ("%d",n);
执行后输出结果为 ( )
A . 0 B. 1 C. 2 D. 3
答案为D,为什么 ? 展开
展开全部
15.
输出表列有三项,格式控制字符只有一项,对应表达式a=a+1=2,所以输出2
1.
a= b+ c 所以表达式值为非零,为真,执行printf ("###\n");
2.
自增运算符后缀,所以先引用,后自增,m为2,m>2为假,然后m自增一值为3,执行else部分,m+2=5
7.
注意是x=2 ,是=,赋值号,也就是x被赋值为2,表达式非零,为真执行y= y+2;
8.
i为10,所以到陆拿case 10部分i+=1;i值为11,然而,后无break;所以继续下去case 11部者悉迅分的内容,以此类推
9.
自减运算符后缀,先引用,后自增,当n为0时,循环才结束,但别忘了还有个自减首此,所以n退出循环时值为-1
10.
与上同理,n==2时才退出循环,但是还有自增,所以退出循环式n值为3
输出表列有三项,格式控制字符只有一项,对应表达式a=a+1=2,所以输出2
1.
a= b+ c 所以表达式值为非零,为真,执行printf ("###\n");
2.
自增运算符后缀,所以先引用,后自增,m为2,m>2为假,然后m自增一值为3,执行else部分,m+2=5
7.
注意是x=2 ,是=,赋值号,也就是x被赋值为2,表达式非零,为真执行y= y+2;
8.
i为10,所以到陆拿case 10部分i+=1;i值为11,然而,后无break;所以继续下去case 11部者悉迅分的内容,以此类推
9.
自减运算符后缀,先引用,后自增,当n为0时,循环才结束,但别忘了还有个自减首此,所以n退出循环时值为-1
10.
与上同理,n==2时才退出循环,但是还有自增,所以退出循环式n值为3
追问
你好,非常感谢你的帮助!我刚学C,用的是大学C\C++语言程序设计(阳小华马淑萍),感觉这本书讲的不是很透彻。请问一下,能否给我一点学习C语言的指导,或者哪里有比较详细的入门的资料,或哪里可以做题,做完题后有详细的解析,哪里错了及为什么错
1 if (a= b+ c ) 这里的if (a= b+ c ) 不是如果a的值和b+c的值相等的意思,而是将b+c的值赋给a?a= b+ c表达式的值是多少?
9、10题 printf ("%d",n);不是while的循环体?
追答
=是赋值运算符,将右边的值赋给左边的变量
==是关系运算符,判断左右值相不相等,相等,表达式值为1,不等,表达式值为0
while (n — —) ;
注意,后有分号,也就是说,循环体为空语句
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询