| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 599 人关注过本帖
标题:紧急求救!
只看楼主 加入收藏
我为C狂
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2004-7-29
收藏
 问题点数:0 回复次数:2 
紧急求救!

#include <stdio.h> int func(int a,int b);

void main() { int k=4,m=1,p;

p=func(k,m); printf("%d,",p); p=func("%d\n",p); }

int func(int a,int b) { static int m=0,i=2;

i+=m+1; m=i+a+b;

return(m); }

A. 8,17 B. 8,16 C. 8,20 D. 8,8   答案:A #include <stdio.h> void main() { int i,s;

i=0;s=0; while(i<10); { s+=(i++); printf("%d\n",s); } printf("i=%d\n",i); }

A. i值为9,s值为45 B. i值为10,s值为45 C. i值为10,s值为36 D. 程序陷入了死循环

答案: D 这两题觉得有问题,请大家指教!

搜索更多相关主题的帖子: include return 
2005-01-14 16:08
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:0 
p=func("%d\n",p);   // 这个地方是不是写错啦,
函数int func(int a,int b)的m位于静态存储区,是一个静态局部变量
也就是说p=func(k,m);语句后,func函数中m的值为8,第二次执行这个函数时mde值还是8.

位于静态存储区的变量,经程序编译后,就已经分配了存储空间,在程序整个运行期间都存在,
而未经static修饰的变量,是在程序运行期间分配的,如果一个函数结束,那么这个变量将消失.

第二题,while语句后有个分号,循环条件不变,陷入死循环

如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2005-01-14 17:06
aniude
Rank: 2
等 级:新手上路
威 望:3
帖 子:231
专家分:0
注 册:2004-11-3
收藏
得分:0 
while语句后有个分号,循环条件不变,陷入死循环 ,呵呵,怪浪

2005-01-15 12:01
快速回复:紧急求救!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016012 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved