打印

《C语言教程》04章 附带格式的输入输出

[复制链接]
727|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、格式输出『printf()』
前面已经说过,一个字符用%d格式就可以输出其ASCII码即字符的整数值。用%c格式则输出这个字符。如果用%f格式,则小数的方式输出。例如下面这个例子:
#include <stdio.h>

int main(void)
{
    int days = 360;

    //“劝学网”三字的ASCII码是“C8B0”“D1A7”“CDF8”
    printf("\xC8\xB0\xD1\xA7\xCD\xF8\t小雅\n");   //显示:劝学网{TAB}小雅

    printf("北京奥运还有: %d天\n", days);
    printf("\a\a");          //“嘟嘟”

    //以下三行写在同一行
    printf("%s", "这是C语言");
    printf("教程\t");
    printf("作者:%s\n","小雅");

    //360分别以整数、小数、科学计数法显示
    printf("整数:%d\n小数:%f\n科学:%e\n",days,(float)days,(double)days);

    //以下控制字节长度
    printf("360用5个字节表示:[%5d]\n",days);   //[...]中共5字节
    printf("3.6保留2位整数2位小数:[%5.2f]\n",(float)days/100);   //[...]中2位整数2位小数,
                                                                  //外加小数点共5字节
    return 0;
}  
结果如下:





相关帖子

沙发
niuyaliang|  楼主 | 2015-3-16 09:25 | 只看该作者
二、常见格式符号

使用特权

评论回复
板凳
niuyaliang|  楼主 | 2015-3-16 09:33 | 只看该作者
三、格式输入『scanf()』
    scanf()函数的功能与printf()函数正好相反,是输入数据的功能。但对于初学者却有一难点,即所输入的数据存放到变量时,用到了地址操作。地址操作也就是指针,是C语言的难点、重点,许多人不会C语言的根本原因就是没学会指针。
    既然指针这么难,为什么C语言要使用指针呢?C语言产生之前,前辈们都是用机器语言或汇编语言来编程,整天都是与内存地址打交道,C语言使用了指针,使得程序运行速度接近汇编语言,编程效率、实现的功能大大提高。当今电脑硬件的飞速发展,使速度不成问题,于是Java、C#都基本废除了指针的使用。

使用特权

评论回复
地板
niuyaliang|  楼主 | 2015-3-16 09:35 | 只看该作者
如下面这个例子:

#include <stdio.h>

int main(void)
{
    int age;         //年龄
    char name[20];    //姓名

    printf("请输入你的年龄:");
    scanf("%d", &age);      //&age表示变量age的地址

    printf("请输入你的姓名:");
    scanf("%s", name);      //name单独使用就表示变量name的地址

    printf("\n姓名=%s\t年龄=%d\n",name,age);

    return 0;
}

结果如下:

使用特权

评论回复
5
niuyaliang|  楼主 | 2015-3-16 09:36 | 只看该作者
    上例中,2个变量当作参数使用时,一个用了&符号,一个没用,为什么呢?原来当一个变量的类型是基本类型、或扩充基本类型时,变量的地址要用&符号再加变量名。其它尤其指数组,单独使用变量名,就表示该变量的地址。关于这一点,以后讲完数组和指针后还要详细讨论。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

212

主题

2427

帖子

7

粉丝