当前位置: 代码迷 >> C语言 >> [问题已解决][求助]C的几道题
  详细解决方案

[问题已解决][求助]C的几道题

热度:346   发布时间:2006-07-15 21:59:51.0
提示: 作者被禁止或删除 内容自动屏蔽

2006-07-15 13:59:51
穆扬

等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
  得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-07-15 14:00:55
摄政王:多尔滚

等 级:新手上路
帖 子:148
专家分:0
注 册:2006-7-9
  得分:0 

1. 程序的作用是将字符串s1复制到字符串s2,填空
main()
{ char s1[]="China",s2[20];
int i;
for(i=0;*(s1+i)!='\0';i++)
{ *(s2+i)=*(s1+i);
____ ='\0';
printf("s2=%s\n",s2);}
}


答案是: *(s2+i) 可是我运行了一下,好象不对的,我认为是:*(s2+5) 对伐?

==========>
for(i=0;*(s1+i)!='\0';i++)
{
*(s2+i)=*(s1+i);
}
*(s2 + i) ='\0';
printf("s2=%s\n",s2);



----------------解决方案--------------------------------------------------------
2.main()
{ unsigned a=32768;int b;
b=a;
printf("b=%d\n",b);
}
输出结果是: b= -32768 这怎么算的啊?

a = 32768 ; ==>a binary : 11111111 11111111
b = a; ==>b binary: 11111111 11111111

because b is sign number, so b = -32768

----------------解决方案--------------------------------------------------------
3 and 4 question please run

5 question is 'A'

----------------解决方案--------------------------------------------------------

1.题写错了

1. 程序的作用是将字符串s1复制到字符串s2,填空
main()
{ char s1[]="China",s2[20];
int i;
for(i=0;*(s1+i)!='\0';i++)
*(s2+i)=*(s1+i);
______ ='\0';
printf("s2=%s\n",s2);
}

这样就对了

2题呢~~想知道结果的为什么,要弄清楚负数,正数,无符号数在内存中是以什么形式存放的


----------------解决方案--------------------------------------------------------
以下是引用穆扬在2006-7-15 22:00:55的发言:

超过了又怎样?

你自己试一下 不就知道了吗
我的表达能里不好 怕你看不明白

[此贴子已经被作者于2006-7-15 22:12:47编辑过]


----------------解决方案--------------------------------------------------------
3 我运行过了,没通过,
我没见过case 0 后面什么都没有的,有这种形式吗?

----------------解决方案--------------------------------------------------------
以下是引用Sally_SJL在2006-7-15 22:12:45的发言:
3 我运行过了,没通过,
我没见过case 0 后面什么都没有的,有这种形式吗?

没见过


----------------解决方案--------------------------------------------------------
3.若程序执行时的输入数据是“2473”,则下面的程序的输出结果是
#include<stdio.h>
void main()
{ int cx;
while((cx=getchar())!='\n');
{ swith(cx-'2')
{ case 0
case 1: putchar(cx+4);
case 2: putchar(cx+4);
break;
case 3: putchar(cx+3);
default: putchar(cx+2);
}
}
}
这个程序很阴险啊
----------------解决方案--------------------------------------------------------
  相关解决方案