笔记(1)一些简单的输入输出--C Primer Plus

**********************************************************************************
//一些简单的输入输出

-------------------------------------------------------------------------------

  **
            键盘和显示设备作为每个C程序自动打开的文件来对待。键盘输入由一个被
            称为stdin的流表示,而到屏幕(电传打印机或其他输出设备)上的输出由
            一个被称为stdout的流表示。getchar(),putchar(),printf()和
            scanf()函数都是标准的I/O包成员,这些函数同这两个流打交道。C输入
            函数装备有内置的文件尾检测器来终止键盘输入。现今,一些OS使用一个内嵌
            的Ctrl+Z字符来表示文件结尾。也可以根据存储文件大小的信息来判断文件尾。
            而C的处理方法是让getchar()在到达文件尾时返回一特殊值EOF(End OfFile)
            通常EOF在stdio.h中定义:#define EOF (-1)
           
*******************************************************
用文件实现输入输出:
      freopen("input.txt", "r", stdin);
      freopen("output.txt", "w", stdout);
      说明:input.txt和output.txt和程序放在同一个目录下
*******************************************************

**
//#include<stdio.h>
//#include<string.h>
//#define STR "What is your name?\n"
//int main()
//{
    **
      printf(STRSTR);
      printf("---------\n");//区别
      printf(STR,STR);//只打印了一个STR
      **

-------------------------------------------------------------------------------

      **
      charname[20];
      intx=100;
      printf("Please"    "input your""name:\n");//=printf("Please input your name:\n");
      printf("%d\n",strlen(name));    //name还未输入strlen(name)长度不定
      scanf("%5s",name);                        //直接收5个字符
      intsize=strlen(name);
      printf("Youname has %d characters\n",sizeof name); //name所在字符串总的宽度
      printf("Youname has %dcharacters\n",size);              //输入的name所占的宽度
     
      printf("%%%d\n",x);      //打印一个百分号
      printf("%d%o %x\n",x,x,x);
      printf("%d%#o %#x\n",x,x,x);//以十进制,八进制,十六进制形式输出x
     
      intt=printf("%c %s %ho\n",'$',"abcde",x);
      printf("%d\n",t);                  //显示上句printf打印的字符个数

      printf("Please enter three intrgers:\n");
      scanf("%*d%*d%d",&x);      //跳过输入的头两个数
      printf("Thelast integer was %d\n",x);
    **

-------------------------------------------------------------------------------
     
    **
      inta=1,b=1;
      intaplus=a++;//后缀:使用a的值之后改变a           
      intplusb=++b;//前缀:使用b的值之前改变b
      printf("%d%d %d %d\n",a,aplus,b,plusb);
     
      intd=1;
      intc=1+2*d++;//c=3,d=2
      printf("%d%d\n",c,d);

      intresult=2*(c+(d=5));//=2*(3+(5))=16
      result=(2+3)*10.5;//=52.5-->52
      printf("%d\n",result);
    **
-------------------------------------------------------------------------------

      /*
              类型级别高到低 long double <--double  <--float <--unsigned long long<--long long
                                            <--unsigned long <--long<--unsigned int <--int
                例外:当int和long具有相同大小时,unsigned int比long的级别更高
                当作为函数的参数传递时,char和short会被转换成int,float会被转换成double
                指派运算符:eg:mice=(int)1.6+(int)1.7;
    **

     
      **
        printf("Enter afigure\n");
        while(scanf("%d",&a)==1)
                //单独的分号代表空语句,scanf()只要读入一个整数就会返回1,循环就会继续
                        //当输入字母或小数时,循环结束。
           
            500;//这是一个什么都不做的语句

      **


************************************************************************************
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值