帮忙写出下列C语言程序的运行结果

程序1.1
main ( )
{ int i , n=0;
for( i=2 ; i<5 ; i++)
{do
{ if( i%3) continue;
n++;
}while (! i );
n++;
}
printf(" n=%d\n" , n)
}

程序2.2
以下程序运行后的输出结果是____?

main ( )
{ char a[ ]="Language", b[ ] ="Programe" ;
char *p1, *p2; int k;
p1=a; p2=b
for (k=0 ; k<=7; k++)
if (*(p1+k)==*(p2+k) ) printf ("%c" , *(p1+k ) ) ;
}
则运行结果为?

m>
using namespace std;
int main()
{
int a=1,b;
for(b=1;b<=10;b++)
{
if(a>=8)break;
if(a%2==1)
{
a+=5;continue;
}
a-=3;
}
printf("%d\n",b);
system("pause");
}
开始是时a=1,b=1执行for语句,对1%2=1,执行a+=5,之后结果为a=6,接着执行continue ;6%2=0
跳出if(a%2==1)语句,执行 a-=3之后 a=3,b++,b=2 再执行for语句,因a=3,不执行if(a>=8),因3%2==1
所以a+=5之后a=8, 因8%2=0,故跳出if(a%2==1),执行a-=3后a=5,b++ b=3再一次执行for循环,因a<8,不执行if(a>=8),
因5%2==1所以a+=5之后a=10, 再一次执行for语句b++,b=4 判断知a=10>8 执行break语句跳出for循环,所以最后结果为b=4;

break和continue语句的区别如下:
执行break语句结束的是整体循环,而使用continue语句时是继续执行本次循环
如程序中的if(a%2==1) 只要a%2==1为真句一直执行a+=5这条语句,不会退出去执行for语句
执行break之后是结束for循环
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-02-25
问题1:n=3
问题2:ga

你应该实际编译下,很简单的程序,学编程怎么可以不动手呢本回答被网友采纳
第2个回答  2011-02-25
第一题是 5
第二题是 ga,注意你的第四号掉了个分号
第3个回答  2011-02-25
第一个是:4
第二个是:gae
第4个回答  2011-02-25
第一个是n=4
第二个是gae

C语言 分析下列程序的运行结果
由于逻辑运算2&&3结果为1,故条件为真,程序执行a=1语句;最终输出为1 2、输出为:7 运行switch(1)时,将执行case(1)语句,并接着往下执行直至遇到break,或者整个switch语句结束 所以最终b=1+1+2+3=7 3、输出为:5 实际上for循环中 i 有两次自加运算,故步长为2,;即当 i 增加2时,...

c语言 下列程序执行后的输出结果是(小数点后只写一位)
20\/3中,20和3都是整型常量,所以20\/3==6。d=20\/3,那么d==6.000000,f也是一样。但是,如果这么写:d=20.0\/3,那么d==6.666667。i==l==6。希望对你有帮助。有不明白的可以练习我。

C语言问题:下面程序的运行结果是
看看程序逐步运行跟踪结果:i=1;[i=1] i<5成立,开始循环: i%2为真, printf输出[*], printf累计输出[*#]i++;[i=2] i<5成立,继续循环: i%2为假, continue;i++;[i=3] i<5成立,继续循环: i%2为真, 累计输出[*#*], 累计输出[*#*#]i++;[i=4] i<5成立,继续循环: i%2为...

C语言写出下列程序的运行结果和int类型
1、输出 3.140000, 3.14(%f是以浮点型输出,而一个浮点型变量的有效数字是7位,不够的补0;%4.2f输出 格式表示小数点后保留两位小数)2、输出 A, B (%c 是表是以字符型输出,’a‘的ASCII值为97,’b‘为98,减去32后是65,66分别对 应A、B,’\\n‘表示换行)3、0 (%d表示...

C语言 在线等下列程序运行结果?新人,实在没财富值了,求各位高手帮帮忙...
=*(a+j); *(a+j)=t; i++;j--;\/*楼主这里的J应该是小写*\/ } for(i=0;i<5;i++) { printf("%d",*(a+i));\/*楼主这里少了个双引号,而且为了便于可读最好重起一行,不过楼主的也可以*\/ }}运行结果:25463 ...

求下列C语言程序的正确运行结果
void sub1();void sub3(int a[]);void main(){ printf("\\n"); \/\/换行 sub1(); \/\/执行函数sub1()sub3(a); \/\/把数组a作为参数执行sub3函数 sub2();sub3(a);} void sub2(){ int a[MAX],i,max; \/\/此处需要注意,因为a已定义为局部变量,所以全部数组a[MAX]在本函数...

c语言,以下程序运行后的输出结果是
a+=a-=5)是一个表达式,(a=b,b+3)是另一个表达式。a=0,a=a-5=-5,a=a+a=(-5)+(-5)=-10,将值赋给c,c=-10,此时,a=-5 a=b,将b的值赋给a,a=0,执行b+3=0+3=3,这个3不对任何变量赋值。因此最终结果a=0,b=0,c=-10 输出a、b、c的值,输出0,0,-10 ...

C语言,写出下列程序运行结果及解释。
{ int x=12,y=8;printf("\\n%5d%5d%5d", !x, x|| y, x && y);\/\/(!x,x||y,x&&y) 相当于(!12,12||8,12&&8)\/\/ !x:当x=0,!x就等于 1 就是对x 取非 \/\/ ||:两边只要有一个为真,结果就为真 \/\/ &&:两边都为真,结果才为真,否则为0 } 输出结果: 0 1 1 ...

C语言,以下程序运行的结果是什么,麻烦详细解释一下
int main(){ union b { int k;char c[2];}a;a.k=-7;printf("%d,%d\\n",a.c[0],a.c[1]);return 0;} 解释 :联合体共用存储空间。int型占4个字节,char型占一个字节,因此a的内存分布如下图 整型数-7的十六进制表示为0xfffffff9 char[0] = 0xf9 \/\/转为十进制-7 char[1]...

C语言 42.下列程序的运行结果是( ) void fun(int *a,int *b) {int *...
函数 fun(int* a,int* b)的两个参数类型都是int*型.也就是说,参数变量a, b本身的值不会变.当传入两个实参int* x , int* y后.尽管fun里面作了交换操作,这种交换不会影响到原来的x,y变量值.要象这样定义FUN函数,才有意义.void fun(int *a,int *b){int k;�k=*a;*a=*b...

相似回答
大家正在搜