| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 674 人关注过本帖
标题:大家好,我是新来的 请大家多多关照 我最近在看C语言的基础知识 但有的地方 ...
只看楼主 加入收藏
tangjun361
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-9-27
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
大家好,我是新来的 请大家多多关照 我最近在看C语言的基础知识 但有的地方看不懂 希望大家帮帮我 谢谢了!
   (二)、用逗号分隔开的声明语句
        C语言可大多数语言一样,允许用逗号分隔声明语句中的标识符列表,说明这些运算符是同一变量类型。例如:
            float Area,Height,Width;
        但有些程序员喜欢把标识符写在不同的行上。如:
            float Area,
                  Height,
                  Width;
        这样写至少有一个好处,就是可以在每个标识符后边加上注释。
        在声明变量的时候,也可以直接给变量赋值,这叫做变量的初始化。
        如:int a;
            a=3;
        等价于:
            int a=3;
        我们也让某些变量初始化,某些不初始化,如:
            int a=3,b,c=5;
        在进行初始化时,初始化表达式可以是任意的(对全局变量和静态变量有区别),由于逗号运算符是从左到右运算的,那么看看这样行不行?
上面的是我现在在看的内容  但是我想了半天也想不出 它最后说的行不行  应该是不行吧 因为b它没有赋值  是这样吗? 我是个莱鸟  希望大家帮帮我 谢谢了~~

========================================================================================================


(三)、标准输入输出语句
        Turbo C 2.0标准库提供了两个控制台格式化输入、输出函数scanf();和printf();这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。scanf() 函数用来从标准输入设备(键盘)上读数据,printf()函数用来向标准输出设备(屏幕)写数据。下面详细介绍这两个函数的用法。
        1.标准输入语句
            scanf()函数是格式化输入函数, 它从标准输入设备(键盘) 读取输入的信息。其调用格式为:
                scanf(<格式化字符串>, <地址表>);
            格式化字符串包括以下三类不同的字符;
            (1).空白字符:空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符。
            (2).非空白字符:一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。
            (3).格式化说明符:以%开始,后跟一个或几个规定字符,用来确定输出内容格式。
               Turbo C 2.0提供的输入格式化规定符如下:
            ━━━━━━━━━━━━━━━━━━━━━━━━━━
              符号         作用
            ──────────────────────────
               %d       十进制有符号整数
               %u       十进制无符号整数
               %f       浮点数
               %s       字符串
               %c       单个字符
               %p       指针的值
               %x,%X      无符号以十六进制表示的整数
               %o       无符号以八进制表示的整数
         ━━━━━━━━━━━━━━━━━━━━━━━━━━
           地址表是需要读入的所有变量的地址,而不是变量本身,取地址符为'&'。各个变量的地址之间同,分开。
           例如:
              scanf(%d,%d,&i,&j);         
          上例中的scanf()函数先读一个整型数,然后把接着输入的逗号剔除掉,最后读入另一个整型数。如果,这一特定字符没有找到,scanf()函数就终止。若参数之间的分隔符为空格,则参数之间必须输入一个或多个空格。
上面的也是我遇到的另一个问题 怎么看也看不懂   难道它说的逗号 就是非空白字符吗 然后它又说 若参数之间的分隔符为空格 则参数之间必须输入一个或多个空格, 是不是表示要是空格的话 必须是2个以上的空格是吗?
希望大家帮帮我  我很喜欢C语言   我在这里先谢谢大家了!!
搜索更多相关主题的帖子: 基础 C语言 知识 
2009-09-27 08:22
jpeak
Rank: 1
等 级:新手上路
帖 子:2
专家分:6
注 册:2009-9-27
收藏
得分:5 
朋友.你可以看看谭浩强的书《C程序设计》上面有很好的解释。
第一个问题应该是可以的哟!b没有赋值,a,c赋了值没有什么不行的
第二个问题是scanf是格式化输入的,空格是表示输入结束。%d,这表示读到逗号时第一个量输入才结束,如果是%d%d这样读到空格或回车时才知道输入的第一个量才结束。有时电脑是很笨的。不能事先知道你要输入多少,是123,还是1234的
2009-09-27 10:44
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
收藏
得分:5 
1"我们也让某些变量初始化,某些不初始化,如:
            int a=3,b,c=5;
        在进行初始化时,初始化表达式可以是任意的(对全局变量和静态变量有区别),由于逗号运算符是从左到右运算的,那么看看这样行不行? "
你是说 int a=3,b,c=5;  这样赋值可不可以嘛?是可以的,这样赋值以后a的初始值就是3,c的初始值就是5,其实b也是有初始值的,是电脑随机给它赋了一个值(也就是b所在的内存单元原来存放的值)。
2 对于scanf的空白字符和非空白字符我不是很懂,只知道scanf是格式化输入,你的scanf()括号里是什么格式,你在输入的时候就要服从相应格式,所以当有逗号时,你也必须有逗号隔开。而你直接scanf("%d%d")时,在输入的时候,只要两个数(或者其他类型的)之间有空格或者回车来区分就可以了。空格一个也可以,多个也可以。因为空格是系统作为多个输入的分隔符的。


2009-09-27 10:55
rangelee
Rank: 2
等 级:论坛游民
帖 子:17
专家分:18
注 册:2009-7-4
收藏
得分:5 
回复 楼主 tangjun361
你好!
    你的问题楼上已经给你解释了,我补充一下,学习编程不能死看书而不在电脑上进行实际操作的,光想象是不行的,对与不是很理解的例子或语句最好是在电脑上实际运行一下方便理解!
2009-09-27 12:34
lixingjiang
Rank: 3Rank: 3
来 自:滁州学院
等 级:论坛游侠
帖 子:104
专家分:184
注 册:2009-4-17
收藏
得分:5 
顶4楼的
有些东西你要先记住,而且会应用,以后学的更深入的时候自然就明白了

为梦想冲刺
2009-09-27 20:04
快速回复:大家好,我是新来的 请大家多多关照 我最近在看C语言的基础知识 但有的 ...
数据加载中...
 
   



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

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