这几个C语言问题啊

来源:百度知道 编辑:UC知道 时间:2024/07/02 03:12:37
有以下程序段 (A)
int k=0
while(k=1)k++;
while 循环执行的次数是
A、无限次 B、有语法错,不能执行 C、一次也不执行 D、 执行1次
当执行以下程序段时
x=-1;
do { x=x*x;} while(!x);(B)
A、循环体将执行一次 B、循环体将执行两次 C、循环体将执行无限次
D、系统将提示有语法错误
运行以下程序后,如果从键盘上输入65 14<回车>,则输出结果为 (C)
main ( )
{
int m,n;
printf("Enter m,n:");
scanf("%d%d",&m,&n);
while(m!=n)
{
while(m > n)m-=n;
while(n > m)n-=m;
}

printf("m=%d\n",m);
}(3分)
A、m=3 B、m=2 C、m=1 D、m=0
以下程序的输出结果是
main( )
{ int x=10,y=10,i;
for(i=0;x > 8;y=++i)
printf("%d %d ",x--,y);
}(3分)
A、10 1 9 2
B、9 8 7 6
C、10 9 9 0
D、10 10 9 1
以下程序的输出结果是
main( )
{ int n=4;
while(n--)printf("%d ",--n);

第一题:A 因为while(k=1)中的k=1,那么就等于while(1);你说是不是永远执行下去
第二题:A 因为经过do语句后i的值变成1,那么!1就是0,所以循环停止。
第三题:C m n
65 14
51 14
37 14
23 14
9 14
9 5
4 5
4 1
3 2
1 2
1 1 然后结束循环!
第四题:D i x-- x y
0 10 9 10
1 9 8 1
就这样了;
第五题:A n n-- n --n
4 4 3 2
2 2 1 0
所以输出2 0
就这样了 别的我就不想多说了 congratulations

第一个int k=0后面少了“;”分号,答案:B、有语法错,不能执行;
第二个A、循环体将执行一次;
第三个C、m=1;while(m!=n),只要m,n你相等就会一直执行循环,互减,最后到m,n的值都为1;
第四个:D、10 10 9 1; for(i=0;x > 8;y=++i) 等价于:for(i=0;x>8;i++) y=i;
第五个A、2 0

对没错
不过我对c语言不是很在行
如果数据库的话我还行