C语言中表示输入输出相关

scanlf:表示输入

#include<stdio.h>
int main(){
    int a;
    scanlf("a=%d",&a);// 输入格式 变量的地址
// &a 取地址符
//然后通过键盘的输入数据到变量地址对应的空间
//输入的时候必须严格按照输入格式输入
    printf("a=%d\n",a);
    return 0;
}

printf:print(打印),format(格式)

特例1:

#include<stdio.h>
int main(){
    int a,b,c;
//输入数值  format:"%d%d%d"
//加:空格、回车、Tab
    scanf("%d%d%d",&a,&b,%c);
    printf("a=%d\n",a);
    printf("b=%d\n",a);
    printf("c=%d\n",a);
    return 0;
}

运行结果:

特例2:

#include<stdio.h>
int main(){
    char a,b,c;
//输入字符 format:"%c%c%c"
//字符和字符直接要紧紧的挨在一起输入
    scanf("%c%c%c",&a,&b,&c);
    printf("a=%c\n",a);
    printf("b=%c\n",b);
    printf("c=%c\n",c);
    return 0;
}

运行结果:

可以看出,输出的结果是紧挨着输出的。

特例3:

#include<stdio.h>
int main(){
    double a;
//输入格式 float--->%f
//输入格式 double--->%lf 
    scanf("%lf",&a);
    printf("a=%f",a);
    return 0;
}

运行结果:

特例4:

#include<stdio.h>
int main(){
    int x,y;
    scanf("%d%3d",&x,&y);//1234 56789
    printf("x=%d,y=%d",x,y); 
    return 0;
}

运行结果:

这里%3d代表从左往右三位,即为:567

字符输入输出函数putchar() getchar()

1.putchar(); --->输出一个字符
#include<stdio.h>
int main(){
    int a='\101';
    printf("a=%c\n",a);
    putchar(a);
    putchar('\n');
    putchar('\x41');
    putchar('a'+3);
    return 0;
}

编译运行结果

putchar作用是向终端输出一个字符。其格式为putchar(c),其中c可以是被单引号(英文状态下)引起来的一个字符,可以是介于0~127之间的一个十进制整型数,也可以是事先用char定义好的一个字符型变量。

2.getchar() --->读入一个字符
#include<stdio.h>
int main(){
    char a,b,c;
    a=getchar();
    b=getchar();
    c=getchar();
    printf("%c%c%c",a,b,c);
    return 0;
}

编译运行结果

可以看出不管输入多少字符,一个getchar只能写入一个字符,当用户键入回车之后,getchar才开始从stdio流中每次读入一个字符。getchar函数的返回值是用户输入的字符的ASCII码,若文件结尾(End-Of-File)则返回-1(EOF),且将用户输入的字符回显到屏幕。

下面做几个例题:

1.输入三角形的三条边,求三角形的面积。

#include<stdio.h>
#include<math.h>
int main(){
    double a,b,c;
    scanf("%lf%lf%lf",&a,&b,&c);
    double s=(a+b+c)/2;
    double area;
    area=sqrt(s*(s-a)*(s-b)*(s-c));
    printf("area=%f",area);
    return 0;
}

2.求解一元二次方程。

#include<stdio.h>
#include<math.h>
int main(){
    float a,b,c;
    scanf("%f%f%f",&a,&b,&c);
    float x1,x2;
    x1=(-b+sqrt(b*b-4*a*c))/(2*a);
    x2=(-b-sqrt(b*b-4*a*c))/(2*a);
    printf("x1=%f,x2=%f",x1,x2);
    return 0;
}

3.输入一个大写字母,将大写字母转换为小写字母。

依据:A-->65 a-->97 'A'+32='a'

#include<stdio.h>
#include<math.h>
int main(){
    char c1;//大写
    char c2;//小写
    c1=getchar();
    c2=c1+32;
    putchar(c2);
    return 0;
}
End
最后修改:2021 年 03 月 14 日
如果觉得我的文章不错,请随手点赞~