首页 > 其他分享 >C语言中的输入输出

C语言中的输入输出

时间:2024-07-26 20:24:59浏览次数:15  
标签:输出 int scanf 输入输出 C语言 printf 格式 include

简单格式的输入输出

简单的输出语句:printf

  • 语法printf "格式控制" 输出表列

  • 举例:

    printf("%d,%f,%c",a,b,c);
  • 说明:

    %和特定字符组成,如:%d、%c、%f等,是格式说明符,用于说明输出项目所采用的格式;

  • 基本的格式字符

    • %d 按十进制整型数据的实际长度输出。

    • %c 仅输出一个字符。

    • %s printf("%s\n", "CHINA");输出的结果是字符串 CHINA

    • %f 以小数形式输出一个实数(含单双精度数)。整数部分全部输出,并输出6位小数。

    • %e或%E 以指数形式输出一个实数(含单双精度数)。小数点前仅1位非0数字,并输出6位小数。

    简单的输出语句:scanf

    • 语法scanf "格式控制" 地址表列

    • 举例:

      scanf("%d%f%s",&a,&b,&c);
    • 说明:

      “格式控制”的含义同printf函数,说明输入的数据应使用的格式。

      “地址表列”是由若干个地址组成的,可以是变量的地址或字符串的首地址。&是取地址运算符,用于取出变量的地址。 与格式输出一样,在格式控制中,用于说明输入数据格式的格式说明符总是以开头,后面紧跟的是具体的格式。

    较复杂的输入输出格式

    按指定格式输出数据的宽度、小数位数、上下行数据按小数点对齐、用八进制、十六进制输出等。

    输出数据格式控制

    整型格式说明符
    • 十进制形式

      • %d或%md int型

      • %ld或%mld long型

      • %u或%mu 无符号基本型

      • %lu或%mlu 无符号长整型

    • 八进制形式

      • %o或%mo

      • %lo或%mlo

    • 十六进制形式

      • %x或%mx

      • %lx或%mlx

    特殊说明:m表示输出的整型数据所占总宽度(即列数),其中: 当实际数据的位数不到m位时,数据前面将用空格补满; 若实际数据位数大于m,则以数据的实际位数为准进行输出。

    字符型格式说明
    • 字符char型

      • %mc 输出的字符占m列

       printf("%3c",a);  //  a
    • 字符串

      • %ms 输出的字符串占m列。若串长>m,全部输出;若串长<m,左面补空格。

      • %-ms 输出的字符串长<m,右面补空格

      • %-m.ns 只取字符串前n个字符。若n<m,右面补空格;若n>m,m自动取n值。

    • 实型格式说明符

      • 十进制形式 %m.nf或-%m.nf

      • 指数形式 %m.ne或-%m.ne

      • %g或%G形式 根据数值的大小,自动选%f 或 %e中宽度较短的一种格式,不输出无意义的0。

      • 顺序程序结构案例

    • 案例一
          /*
          **输入三角形的三条边,求三角形的面积
          */
      #include <stdio.h>
      #include <math.h>
          
      int main()
      {
          // 定义三条边
          float a,b,c,
          // 定义面积
          float area;
          float s;
          scanf("%f%f%f",&a,&b,&c);
          s = (a + b + c) / 2.0;
          area = sqrt(s*(s-a)(s-b)(s-c));// 三角形海伦公式
          printf("%.2f",area);
      }
      案例二
      /*
      *从键盘输入一个大写字母,要求用小写输出。
      */
      #include <stdio.h>
      
      int main()
      {
          char a,a1;
          scanf("%c",&a);
          a1 = a + 32;
          printf("%c",a1);
      }
      案例三
      /*
      *求一元二次方程ax2+bx+c=0的根。
      */
      #include <stdio.h>
      #include <math.h>
      #include <stdlib.h>
          
      int main()
      {
          // 定义一元二次方程的三个参数
          int a,b,c;
          // 定义方程的两个根
          float x1,x2,p;
          // 定义根的计算值
          int m,n;
          
          scanf("%d,%d,%d",&a,&b,&c);//键盘输入一元二次函数的三个参数
          
          m = -b / 2 * a;
          p = abs(b^2 - 4 * a * c);
          n = sqrt((b^2 - 4 * a * c) / 2 * a);
          
          printf("此方程的解x1=%f,x2=%f",x1,x2);
          
          return 0;
      }

标签:输出,int,scanf,输入输出,C语言,printf,格式,include
From: https://blog.csdn.net/m0_70026170/article/details/140724170

相关文章

  • python 输入输出
    输入输出**注**所有内容均是在pycharm中通过python3.7的解释器进行运行的格式:变量=input('提示词')#输入提示词在控制台显示,要输入的内容在提示词后面输入print(变量)#输出print('输出内容')#在''内部的内容原封不动......
  • C语言判断该数是否为素数
    素数判断方法:判断一个数是否为素数,即判断该数是否只能被1和自身整除,而不能被其他数整除。代码:#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>intisPrime(intnum){if(num<=1){return0;}for(inti=2;i*i<=num;i++){......
  • C语言入门介绍
    文章目录一、源文件和头文件的介绍二、一个简单的C语言程序三、main函数的简单介绍1.main函数的注意事项2.main函数的返回类型四、库函数和printf函数1.库函数2.printf函数五、关键字六、字符与字符串1.字符和ASCII值2.字符串和\03.转义字符七、什么是语句1.空语句2.......
  • 二叉树及其存储实现C语言(附上源码)
    1.什么是二叉树        二叉树是一种特殊的树型结构,其特点是每个结点至多只有两棵子树(即二叉树不存在度大于二的结点),并且二叉树的子树有左右之分,次序不可颠倒【有序树】。 2.二叉树的定义二叉树T:一个有穷的结点集合。    -这个集合可以为空;    -......
  • c语言(7.26)
    今天学习了二级指针和多级指针,数组指针数组指针#include<stdio.h>intmain(){ //利用指针遍历数组 intarr[]={10,20,30,40,50}; intlen=sizeof(arr)/sizeof(int); //获取数组的指针 //1获取数组的首地址 int*p1=arr; //2循环 for(inti=0;i<len......
  • C语言:操作符详解
    文章目录一、操作符(一)操作符的类型1.算术操作符2.移位操作符(1)左移操作符:(1)右移操作符:3.位操作符(二进制)(1)不使用第三个变量,将a和b的值交换。(2)统计整形中二进制中含1的数量(3)编写代码将13二进制序列的第5位修改为1,然后再改回04.赋值操作符5.单目操作符6.关系操作符7.逻辑......
  • 校园导航图(C语言)
    功能分析主要实现了一个校园导航图的相关功能,具体分析如下:图的数据结构定义:AdjMatrix结构体定义了图的邻接矩阵、地点名称、地点介绍、地点个数和路线个数等信息。功能函数:WriteFileAdjMatrix:将邻接矩阵写入文件。delOldAddress:删除旧地点。delOldPath:删除指定路线。......
  • C语言 —— 数组
    目录1.数组的概念2.一维数组2.1一维数组的创建2.2一维数组的初始化2.3一维数组的使用3.二维数组3.1二维数组的创建3.2二维数组的初始化3.2.1不完全初始化3.2.2完全初始化3.2.3按照行初始化3.2.4初始化可以省略行,但不能省略列3.3二维数组的使用1.数......
  • E19.【C语言】练习:数组
    有序序列合并描述输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。数据范围:1≤n,m≤1000 ,序列中的值满足0≤val≤30000输入描述:输入包含三行,第一行包含两个正整数n,m,用空格分隔。n表示第二行第一个升序序列中数字的个数,m表示第三行第二个升序序列中数......
  • 34.【C语言之外】聊聊CE扫雷(XP版)作弊
    1.载入扫雷进程2.选9*9扫雷搜素左上角第一个雷的地址先:之后:与灵活切换  3.结果 格子的坐标(x,y):以下全是基址(1,1)~(9,1):对应01005361~01005369(1,2)~(9,2):对应01005381~01005389(1,3)~(9,3):对应010053A1~010053A9发现:01005381-01005361==010053A1-01005381=20(HEX),偏移量......