我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

« 1 234» Pages: ( 1/4 total )
本页主题: 有几道C语言的题大家帮一下忙 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ workman /'wə:kmən/ n. 工人,工匠 ]


有几道C语言的题大家帮一下忙

#include<stdio.h>
func(int x)
{ int y=0;
static z=3;
x=z++,y++;
return(x);
}
void main()
{ int a=2,i,b;
for(i=0;i<2;i++)
b=func(a++);
printf("%d\n",b);
}
答案是4,谁能帮我解释一下
顶端 Posted: 2006-10-23 21:35 | [楼 主]
五栋楼



性别: 帅哥 状态: 该用户目前不在线
头衔: hspidence
等级: 人见人爱
家族: 跑跑UesTc家族
发贴: 2611
威望: 0
浮云: 2672
在线等级:
注册时间: 2006-09-12
最后登陆: 2012-08-25

5come5帮你背单词 [ satellite /'sætəlait/ n. 沙丁鱼 ]


这个是这么的:
语句只循环两次,第一次时a=2代入,则x=3,因为z++表示的是先付给x,再加加,所以下一次时z就是4了,因为只循环两次,所以x就是4了,这是最基本的c语言的问题阿
顶端 Posted: 2006-10-23 21:46 | [1 楼]
mingking





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 427
威望: 0
浮云: 1134
在线等级:
注册时间: 2005-09-14
最后登陆: 2007-06-27

5come5帮你背单词 [ fireplace /'faiəpleis/ n. 壁炉 ]


因为Z是静态变量,不变,所以B等于4,不知对不对
顶端 Posted: 2006-10-23 21:47 | [2 楼]
piaoliu



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 926
威望: 0
浮云: 1124
在线等级:
注册时间: 2004-12-25
最后登陆: 2011-05-16

5come5帮你背单词 [ strength /streŋθ/ n. 力,力量,实力,长处,优点,人力,兵力 ]


z是static类型的局部变量,所以每次调用func后z的值加1
z+,y++ 是逗号表达式返回前一个的值
func被调用的了两次
func(a++) 传入的参数值是a自增前的值
不知道这样解释行不行?
顶端 Posted: 2006-10-23 21:49 | [3 楼]
北方的狼



性别: 保密 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 764
威望: 0
浮云: 1112
在线等级:
注册时间: 2005-07-12
最后登陆: 2009-06-11

5come5帮你背单词 [ off /o:f/ ad. & a. 脱离(的),离去,(断)掉(的),停止(的),关着(的);prep. 从…离开 ]


你可以用单步调试看看

一看就晓得了
顶端 Posted: 2006-10-23 21:52 | [4 楼]
lylyboy



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 2799
威望: 0
浮云: 1162
在线等级:
注册时间: 2005-10-05
最后登陆: 2008-06-29

5come5帮你背单词 [ bring /briŋ/ vt. 拿来,带来,引起,导致,劝使,迫使,使处于某种状态 ]


问题是static定义的是静态变量,不会变吧
顶端 Posted: 2006-10-23 21:55 | [5 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ countryside /'kΛntrisaid/ n. 农村(的) ]


是不是静态变量值不变啊
顶端 Posted: 2006-10-23 21:57 | [6 楼]
北方的狼



性别: 保密 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 764
威望: 0
浮云: 1112
在线等级:
注册时间: 2005-07-12
最后登陆: 2009-06-11

5come5帮你背单词 [ undergo /Λndə'gəu/ vt. 经历,忍受 ]


如果是这个样子展开你晓得为什么不??
Copy code
#include<stdio.h>

int func(int x)
{
   int y=0;
   static z=3;
       x = z;
       z = z + 1;
       y = y + 1;
   return(x);
}

void main()
{
   int a=2,i,b;
   
   for(i=0;i<2;i++)
   {
       b=func(a);
       a = a + 1;
   }

   printf("%d\n",b);
}
顶端 Posted: 2006-10-23 21:58 | [7 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ acquaintance /ə'kweintəns/ n. 认识的人,熟人认识,了解 ]


# include <stdio.h>
void main()
{char *s="1134211";
int a=0,b=0,c=0,d=0;
int k;
for(k=0;s[k];k++)
switch(s[k])
{ default:d++;
case'1':a++;
case'3':c++;
case'2':b++;
}
printf("a=%d,b=%d,c=%d,d=%d",a,b,c,d);
}
顶端 Posted: 2006-10-23 21:58 | [8 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ anthropology /ænθrə'poləd3i/ n. 人类学 ]


这个答案是5,8,6,1
顶端 Posted: 2006-10-23 21:58 | [9 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ for /fo:, fə/ prep. 就…而言;conj. 因为,由于…的缘故 ]


我不知道怎么解释
顶端 Posted: 2006-10-23 21:59 | [10 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ consciousness /'konəsnis/ n. 知觉,意识,觉悟,自觉性 ]


大家快来帮忙啊,
顶端 Posted: 2006-10-23 22:00 | [11 楼]
a-bomb



性别: 帅哥 状态: 该用户目前不在线
头衔: ‖四∷大∷淫∷魔∷之∷首‖
等级: 人见人爱
发贴: 3076
威望: 2
浮云: 1747
在线等级:
注册时间: 2004-03-31
最后登陆: 2015-06-12

5come5帮你背单词 [ ache /eik/ vi. 痛;n. 痛,疼痛 ]


第一个题的关键有两个`~

1、static变量`~
每次调用的时候不会重新分配`~`
而是使用原来的`~
所以不会还原`~~

2、自加
int i=3, a;
a = i++; //a=3
又:
int i=3, a;
a = ++i;//a=4
不多说,自己悟`~~~
顶端 Posted: 2006-10-23 22:01 | [12 楼]
piaoliu



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 926
威望: 0
浮云: 1124
在线等级:
注册时间: 2004-12-25
最后登陆: 2011-05-16

5come5帮你背单词 [ pudding /'pudiŋ/ n. 布丁 ]


static定义的是静态变量,意思是地址不变,内容可以变,在数据段中
const定义的才是内容不能变的常量,但是仍然要分配空间,基本上用指针访问就和是普通的内存区域了
顶端 Posted: 2006-10-23 22:02 | [13 楼]
datuz



性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 1425
威望: 3
浮云: 399
在线等级:
注册时间: 2006-09-15
最后登陆: 2009-10-03

5come5帮你背单词 [ together /tə'geðə/ ad. 共同地,在一起,相互,彼引,一致地 ]


第二个呢
顶端 Posted: 2006-10-23 22:04 | [14 楼]
« 1 234» Pages: ( 1/4 total )
我来我网·5come5 Forum » 程序员之家

Total 0.019002(s) query 5, Time now is:11-24 04:21, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号