| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1846 人关注过本帖
标题:弄了近2小时 脑袋痛,看来是太久没考试了……
只看楼主 加入收藏
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:0 
回复 8楼 A13433758072
原来我漏过几题,我补上,了晚点上网再,把这些答案弄简介点 10选c为什么啊?要明白strlen遇到结束符就返回strlen ()函数 原型

        int strlen (const char *str)

3选项不是逗号运算符就是,少个括号 m=((a>b)?b:a)

[ 本帖最后由 A13433758072 于 2011-9-15 19:20 编辑 ]

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2011-09-15 19:18
八画小子
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:37
帖 子:709
专家分:2063
注 册:2010-11-11
收藏
得分:2 
楼主能把整个题目放到论坛上,简直是在磨铁杵啊。
2011-09-15 19:29
g79134682
Rank: 2
等 级:论坛游民
帖 子:80
专家分:75
注 册:2011-7-29
收藏
得分:2 
回复 5楼 xugaige
第六题不对么选择b?
2011-09-15 20:24
abc67662957
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2011-9-9
收藏
得分:2 
我来回答一下第6题

在&&和||运算符组成的逻辑表达式中,为提高程序的执行效率,C语言规定,

只对能够确定整个表达式值的最少数目的子表达式进行计算,即当计算出某个子表达式

值后就可以确定整个逻辑表达式的值,后面的子表达式就不再计算了。
计算++a||++b 时已经确定++a为1即可确定表达式值为1,++b被忽略
所以。。。。。。
2011-09-15 21:14
abc67662957
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2011-9-9
收藏
得分:0 
我再来回答一下填空题第6题
这个题目有点小问题
第三个if(b) 后面是--a
这里有三个if   是使用if语句的嵌套形式
运行情况是这样的
a>0为0,所以
if(a>0)  运行后面的if(b>0为1)结果z=-1,接着运行if(b) 运行--a,结果a=-2,z=-1;
你题目的书写太难看 看一下这样的
int a=-1,b=-1,z=0;
    if(a>0)
   
        if(b>0)
            z=1;
        else z=-1;
        if(b)
            --a;
        else
            ++a;
    printf("a=%d,z=%d",a,z);
2011-09-15 21:44
abc67662957
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2011-9-9
收藏
得分:0 
第三道大题的1小题:
  这是for语句的嵌套形式
     n=6;

    for(i=1;i<=n;i++)
  
    {
        for(j=1;j<=20-j;j++)   //运行十次,输出十个空格
            printf(" ");
   
        for(j=1;j<=2*i-1;j++)
   
            if((j==1)||(j==2*j-1)||(i==4))  //j==1或者i==4,输出“*”,否则输出空格
                printf("*");
   
            else printf(" ");
   
            printf("\n");   //上面两个for语句执行完后换行
    }
总结,第二第三个for语句是嵌套在第一个for语句里,
第二个和第三个for语句是循序结构,
第一个for语句是后面两个for语句执行完后换行,
第二个for就是先在每行先输出10个空格,
第三个for是在10个空格后面输出若干个*或者空格


[ 本帖最后由 abc67662957 于 2011-9-15 22:00 编辑 ]
2011-09-15 21:59
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 楼主 fedcab123
最后一道题,<<和>>是移位运算符!建议楼主先把基础知识学一遍,上来就做题怎么会有效果呢

总有那身价贱的人给作业贴回复完整的代码
2011-09-15 22:01
abc67662957
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2011-9-9
收藏
得分:0 
第三大题 第2小题
1.a=0x000f  这是16进制,0123456789abcdef  f十进制是15
2.<< >> 是位运算符  < >是逻辑表达式
楼主理解错误  具体请看 “位运算

2011-09-15 22:18
abc67662957
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2011-9-9
收藏
得分:0 
我做了四题  楼主记得给分
2011-09-15 22:20
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
收藏
得分:2 
选择:
4、因为if条件中的是赋值语句,所以总是成立

6、因为||运算符先判定左边的成不成立,如果成立,则不进行右边的语句,所以++b这句其实没有执行到,故答案为C

7、先执行a<=x的判断,其结果(0或者1)在与b比较是否<b,故为B

9、原理与上题相同,选A

10、Str[7]是第8个字符,strlen(Str)是判断字符串有多少个字符,以'\0'为结束标志,所以算出来是7个字符
:
3、B和C,for的执行顺序,描述不清楚。

填空:
1、m=(y<x?  m:n);

4、参照选择题

5、我认为i是等于6,为什么是4呢?

6、效果是这样的:
main ()
{

    int a=-1,b=-1,z=0;

    if(a>0)
    {
        if(b>0)  
            z=1;
        else
            z=-1;
        if(b)
            -a;
        else
            ++a;
    }
    printf(“a=%d,z=%d”,a,z);
}
b只要不为0,即使是负数也判定为1,故执行--a,答案是a=-2,z=0

7、主要区别是:用<>包括的头文件直接在系统定义的搜索目录中搜索文件
               用“”包括的头文件先在本目录下搜索文件,找不到再去系统定义目录中找。

写结果:
1、仔细读代码就能画出来,我就不打出来了。

2、<< >>是移位运算符,所以得出那答案。


菜鸟拙见,欢迎吐槽。

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2011-09-15 23:12
快速回复:弄了近2小时 脑袋痛,看来是太久没考试了……
数据加载中...
 
   



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

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