LinuxC 7.4 day4

[1]输入输出

        

    getchar 函数

getchar 函数用于从标准输入(通常是键盘)读取一个字符。该函数的声明在标准输入输出头文件 <stdio.h> 中。其具体功能是:

  • 从标准输入读取下一个字符。
  • 返回读取的字符,作为一个 int 值返回(返回 EOF 表示读取结束或发生错误)。
    #include <stdio.h>
    
    int main() {
        int ch;
    
        printf("请输入一个字符:");
        ch = getchar();  // 读取一个字符
    
        printf("你输入的字符是:%c\n", ch);
    
        return 0;
    }
    

      putchar 函数

    putchar 函数用于向标准输出(通常是屏幕)输出一个字符。该函数的声明同样在标准输入输出头文件 <stdio.h> 中。其具体功能是:

  • 将指定的字符写入标准输出。
    • 返回写入的字符,作为一个 int 值返回(返回 EOF 表示输出失败)。
      #include <stdio.h>
      
      int main() {
          int ch;
      
          printf("请输入一个字符:");
          ch = getchar();  // 读取一个字符
      
          printf("你输入的字符是:");
          putchar(ch);  // 输出读取的字符
          putchar('\n');  // 输出换行符
      
          return 0;
      }
      

      1.2输入输出格式

               %d int

               %c char

               %f float

               %lf double

               %s 字符串

               %p 指针

               %o 八进制 %#o

               %x 十六进制 %#x、

                   在%后加#可原格式输出,例如

      int x=0x123;

      printf("%#x"\n",a);

      则输出0x123,若不加#,则省略0x输出123.

              

        printf 函数

      printf 函数用于向标准输出(通常是屏幕)输出格式化的字符串。其定义在标准输入输出头文件 <stdio.h> 中。printf 允许我们输出各种类型的数据,包括整型、浮点型、字符和字符串等,并可以通过格式说明符指定输出格式。

        scanf 函数

      scanf 函数用于从标准输入(通常是键盘)读取格式化输入。其定义也在标准输入输出头文件 <stdio.h> 中。scanf 允许我们从输入中读取各种类型的数据,并将其存储在指定的变量中。

      [2]垃圾字符回收

      2.1 通过空格回收

      可以回收一个多个空格 tab 回车

      2.2 %*c *抑制符

      可以回收任意一个字符

      2.3 getchar

      scanf输入结束会在终端输入'\n';

      解决'\n'程序造成的影响

      [3]分支语句

      包括

      顺序结构、 分支结构、 循环结构
      主要有if、if-else和switch语句。
      #include<stdio.h>//if语句
      char x=0;
      int main(int argc, char const *argv[])
      {
          scanf("%c",&x);
          if(x>='a'&&x<='z')
          {
              printf("大写字母为:%c\n",x-32);
          }
          else if (x>='A'&&x<='z')
          {
              printf("小写字母为:%c\n",x+32);
          }
          else
          {
              printf("error\n");
          }
          return 0;
      }
      #include<stdio.h>//switch语句
      int main(int argc, char const *argv[])
      {   
          int s=0;
          scanf("%d",&s);
          switch (s/10)
          {
          case 10:
              printf("A\n");
              break;
          case 9:
              printf("A\n");
              break;
          case 8:
              printf("B\n");
              break;
          case 7:
              printf("C\n");
              break;
          default:
              printf("补考\n");
              break;
          }
      
          return 0;
      }
      
      1. case后边常量值是整型字符型不能是浮点型字符串
      2. case分支遇到break结束; 后边可以没有break,会从符合条件的分支开始一直运行到整个switch语句执行完结束。

      作业:

      1.终端输入一个日期判断这一年的第几天

      scanf("%d-%d-%d",&y,&m,&d);

      闰年229平年228

      #include<stdio.h>
      int month[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
      int y=0,m=0,d=0,days=0,i;
      int main(int argc, char const *argv[])
      {
          printf("请输入日期,年月日之间加-:");
          scanf("%d-%d-%d",&y,&m,&d);
          if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))
          {
              month[1]=29;
          }
          
          for(i=0;i<m-1;i++)
          {
              days+=month[i];
          }
          days+=d;
          
          printf("这是第%d天\n",days);
      
          return 0;
      }
      

  • 30
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值