数据类型
初学先在大方向上学习三种:整型,字符型,浮点型。整数型=整数 浮点型=小数 整型可以表示字符型(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;
}