C语言---数据类型 printf scanf

数据类型

初学先在大方向上学习三种:整型,字符型,浮点型。整数型=整数     浮点型=小数    整型可以表示字符型(ASCII码表对应的十进制数)

printf函数

一般形式:printf(格式控制,输出表列)  "格式控制"是用双撇号("")括起来的一个字符串,简称"格式字符串"

eg:printf(“%d,%c\n”,i,c);

注意点:1.当打印内存地址时,需要在输出表列加一个取址符(&)

eg:printf("%p",&a);

2.用%f输出实数,只能得到6位小数

3.

4.printf练习

1.输入两个数,获得两个数的加减乘除值

#include<stdio.h>
int main()
{
    int data1=10;
    int data2=6;
    float data4;
    int data3;
    
    data3= data1+data2;
    printf("这两个数的和是%d\n",data3);

    data3=data1-data2;
    printf("这两个数的差是%d\n",data3);

    data3=data1*data2;
    printf("这两个数的积是%d\n",data3);

    data4=(float)data1/(float)data2;
     printf("这两个数相除的结果是%f\n",data4);
    return 0;
}

scanf的用法

注意点:

1.地址符&

2.原样输入

一般不要往scanf语句中输入逗号空格因为要原样输入。

正常写法scanf("%d%d",&a,&b);//这种情况输入一个数后敲空格或者回车后输入下一个数

3.注意字符

空格回车也是字符

scanf("%c%c%c",&data,&data2,&data3);//正确输入方式连着输入三个字符中间不带空格或回车eg:abc

4.有几个变量,最好就使用几个scanf语句输入。(在混合输入中会解释)

混合输入:

#include<stdio.h>
#include<stdlib.h>
int main()
{
    char data1;
    char data2;
    char data3;
    int dataInt;
    float dataFloat;
    printf("请输入整数,字符和小数\n");
   scanf("%d%c%f",&dataInt,&data1,&dataFloat);
   printf("你输入的数据是:dataInt=%d,data1=%c,dataFloat=%f\n",dataInt,data1,dataFloat);
    return 0;
}

其他输入输出的方式

getchar--从键盘得到一个字符

putchar--输出一个字符

puts--输出字符串

gets--输入字符串

puts与printf的区别:puts方法输出完字符串后会自动换行

#include<stdio.h>
int main()
{
    char c;
    
    puts("请输入一个字符");
    c = getchar();
    puts("你输入的字符是");
    putchar(c);
    return 0;
}

输入输出练习题

#include<stdio.h>
int main()
{    
    char a;
    printf("请输入一个大写字母\n");
    scanf("%c",&a);
    printf("它的小写字母是:%c\n",a+32);
    return 0;
    
}

小写字符十进制数比大写字符十进制数大32

骚操作

 #include<stdio.h>
int main()
{    
    char a;
    printf("请输入一个大写字母\n");
    scanf("%c",&a);
    printf("它的小写字母是:%c\n",a+32);
    printf("测试");
    getchar();//用于吸收来源于scanf的回车符,当你多次连续scanf获得字符的时候,要注意回车符
    putchar(getchar()+32);
    return 0;
    
}

作业

作业1:输入两个数,获得两个数加减乘除的值

#include<stdio.h>
int main()
{    
    float a,b;//定义浮点型而不是整型,浮点型可以处理除法小数的问题
    scanf("%f %f",&a,&b);
    printf("a+b=%f,a-b=%f,a*b=%f,a/b=%f",a+b,a-b,a*b,a/b);
    return 0;  
}

作业2:

#include<stdio.h>
int main()
{    
    char c1='C', c2='h',c3='i',c4='n',c5='a';
    printf("%c%c%c%c%c",c1+4,c2+4,c3+4,c4+4,c5+4);
    return 0;  
}
#include<stdio.h>
int main()
{    
    char c1='C', c2='h',c3='i',c4='n',c5='a';
    putchar(c1+4);
    putchar(c2+4);
    putchar(c3+4);
    putchar(c4+4);
    putchar(c5+4);
    return 0;  
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值