首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
7.main()
{ char s[][6]={”1234”,”56789”},*p[2];
int i,sum=0;
p[0]=s[0],p[1]=s[1];
for(i=0;p[0][i」!=’\0’;i++,i++)
sum=10*sum+p[0][i]-’0’;
for(i=1;p[1]「i」!=’\0’;i++,i++)
sum=10*sum+p[1][i]-’0’;
printf("%d",sum);
}
【解析】本程序的第1条语句是定义2行5列的二维字符型数组s,并且赋了初值如下:
s[0][0]='1's[0][1]='2's[0][2]='3's[0][3]='4's[0][4]='\0'
s[1][0]='5's[1][1]='6's[1][2]='7's[1][3]='8's[1][4]='9'S[1][5]='\0'
此外还定义了字符型指针数组p,利用第3条语句赋了值,结果如下:
p[0]指向以“s[0][i]”为数组名的一维数组首地址,即p[0][i]就相当于s[0][i]
p[1]指向以“s[1][i]”为数组名的一维数组首地址,即p[1][i]就相当于s[1][i]
第2条语句定义了整型变量i(用于单重循环的控制变量)和sum,并对sum清0。
第4条语句是for循环,控制变量i初值为0,每次加2,控制循环的条件是“p[0」[i]!='\
0',注意其中的“p[0][i]”就是“s[0][i]”,这个控制循环的条件可以理解为“二维字符型数组元素s[0][i]不是字符串的结束标记则继续循环”。从控制变量i的取位来看,二维字符型数组元素只能取s[0][0]、s[0][2],因为下一个数组元素是s[0][4],该元素值是'\0'。再分析循环体中的语句,其中“ p[0][i]-'0'”是将数组元素s[0][i]中存放的数组字符减去'0',结果将是该数字字符对应的一位整数,整个语句是将sum变量中的原值乘以10以后再加上当前的数字。循环结束后的sum值就是s[0」[0」和s[0][2]中的两个数字组成的2位十进制数,结果为13。
按照同样的道理,可以分析出第2个for循环作用是完全相同的,它是把s[1」[1」、s[1][3]中的两个数字(前者为6,后者为8)拼接到sum的原值中,结果sum中值为十进制整数1368。程序的最后一个语句就是输出变量sum中的整数值。
【参考答案】 1368
8.int p(m,n)
int m,n;
{ int i,pp;
for(i=pp=1;i PP*= m; return(pp); } main() { printf("%d"、 p(3,4)); } 【解析】主函数中只有一条输出语句,输出结果是函数调用“p(3,4)”的返回值。所以本题的关键是函数p的功能。 分析函数p(),有两个参数m、n。函数体中关键的是for循环语句。分析这个循环语句可以看出,控制变量是i,初值为1;,终值为n,每次循环i加1。所以是标准的次数型循环,共计循环n次。循环体中是将参数m的值乘到变量pp中,变量pp在开始循环时已经设置初值为1,所以整个循环是将n个m乘到pp中。显然循环语句的功能是计算m”。而函数的返回值正是这个变量pp中的值。 由此分析可知,函数调用“p(3,4)”的返回值就是34。结果为 81,也就是本程序的输 出结果。 【参考答案】81
2010年软考程序员如何区分printf与fprintf函数
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |