c语言中,用基本类型变量作为函数参数可以实现,在C语言的输出函数中,变量和输出格式符之间的关系是
一、数据类型介绍在C语言中,数据类型是指声明不同类型变量或函数的一个扩展系统。变量的类型决定了变量存储所占用的空间,以及如何解释存储的位模式。
类型:
存储大小的取值范围是char1 byte -128到127或0到255无符号char1 byte 0到255有符号char1 byte -128到127int2或4 bytes -32,768到32,767或-2,147,483,648到2,147,483,67无符号int2或4 bytes 0到65,535或0到4,294,967,295short2 bytes
1.2、获取数据类型的长度# include stdio . h void main(){//sizeof用于获取数字类型的长度//sizeof是关键字(32) printf(char占用字节:%d \n ,sizeof(char));printf( short占用的字节:%d \n ,sizeof(short));Printf(int bytes: %d \n ,sizeof(int));Printf(长占用字节:%d \n ,sizeof(long));Printf(由 float: %d \n ,sizeof(float)占用的字节数);printf( double占用的字节:%d \n ,sizeof(double));}
第二,变量定义是数据类型在内存中开辟的空间。
变量应该有一个名字,也就是我们程序员给空间变量起的名字。
它在存储器中占据一定的存储单元。
变量定义必须放在变量使用前,即在使用前定义,通常放在函数体的开头。
变量:在程序运行过程中可以变化的量。
常量:在程序运行过程中不能改变的量。
# include stdio . h void main(){ int I=100;我;//i=i 1 printf(i=%d \n ,I);//101 I-;//i=i-1 printf(i=%d \n ,I);//100 I=100;//i=i 100 printf(i=%d \n ,I);//200 I/=3;//I=200/3=66.666667=66 printf( I=% d \ n ,I);//66 I 7;//66 7在内存中完成了操作,但是值没有写回printf(i=%d \n ,I);//66}
2.1.变量名命名规则的第一个字符只能是字母或下划线(_);
第一个字符后面只能是字母、数字和下划线(_);
关键字(写出来会变色的字)不能作为变量名;
区分大小写;
第一个地方(a-zA-Z_)后面跟着(a-zA-Z_0-9)
请问以下是违法的。为什么?
1名称
_产品
_9527
两倍
(同Internationalorganizations)国际组织
_产品
_产品
总数
2.2.各种形式的变量定义/*注意:你的选择是c ide */# include stdio . h void main(){//定义变量,赋值int i=100//先定义再赋值给float j;//j=99.5 f;错误,变量定义必须放在变量使用之前,即先定义后使用。一般放在函数体的开头。//同时定义多个变量char a,B,c B,C;//同时定义多个变量并赋值double x=1.5,y=1.6,z;j=99.5fz=x y;}三。integer(int)# include stdio . h void main(){ int I;我;//i=i 1 printf(i=%d \n ,I);//101 I-;//i=i-1 printf(i=%d \n ,I);//100 I=100;//i=i 100 printf(i=%d \n ,I);//200 I/=3;//I=200/3=66.666667=66 printf( I=% d \ n ,I);//66 I 7;//66 7在内存中完成了操作,但是值没有写回printf(i=%d \n ,I);//66}
四。字符型(char) V .单精度浮点型(float) VI。双精度浮点型(double) VII。输入scanf # include stdio . h void main(){//很好判断,如果年龄小于18岁,说明你年轻;否则,输出年龄//定义变量int age//用户输入年龄printf(请输入年龄:);//键盘输入,表示取变量地址scanf(%d ,age);//条件判断if(年龄18){ //If条件成立printf(年轻真好);} else{ //如果条件不为真//输出printf(你的年龄是:%d ,年龄);}}
Scanf(“格式控制”,地址列表);
“格式控制”的含义与printf函数相同;
地址列表是几个地址的列表,可以是变量的地址,也可以是字符串开头的地址。
%f单精度
%lf双精度
%c从键盘接收到一个字符
%d从键盘接收十进制整数。
%s从键盘接收字符串。当遇到空格、制表符或换行符时,接收完成。
% []从键盘接收一个包含在括号中的字符,只有当遇到不包含在其中的字符时,才表示已经接收到。
输入时,如果遇到空格,回车Tab,就表示结束。
7.1.指定分隔符# include stdio . h void main(){ int a,b,c;Printf(请输入年-月-日:);scanf(%d-%d-%d ,a,b,c);Printf(%d年%d月%d日,a,b,c);}
7.2.清除buffer # include stdio . h void main(){ char x,y,z;printf( input:);scanf(%c ,x);printf( input:);scanf(%c ,y);printf( input:);scanf(%c ,z);printf(%c,%c,%c ,x,y,z);}
# include stdio . h void main(){ char x,y,z;printf( input:);scanf(%c ,x);fflush(stdin);//清除缓冲区printf( input:);scanf(%c ,y);fflush(stdin);//清除缓冲区printf( input:);scanf(%c ,z);fflush(stdin);//清除缓冲区printf(%c,%c,%c ,x,y,z);}
7.3.输入字符串# include stdio . h void main(){ char a[100];//array,char只能是单字符scanf(%s ,a);//不带地址printf(%s ,a);}
7.4.限制输入范围#include stdio.hvoid main(){ //限制输入范围char a[100];scanf(%[0123456789]s ,a);//只能输入0-9,其他表示printf(%s ,a)结束;}
7.5.限制输入范围,反向# include stdio . h void main(){ char a[100];scanf(%[^a]s,a);//反转,如果是A,表示结束//scanf (%[\ n] s ,A);//如果是换行符就结束,其他字符可以printf(%s ,a);}
7.6.“*”符号用于表示该输入项。读取后没有给出对应的变量,即跳过输入值。比如:
scanf(%d%*d%d ,a,
当输入为:123时,1给A,2跳过,3给b。
/*注意:您的选择是C IDE */# include stdio . h void main(){ int a,b;scanf(%d%*d%d ,a,b);printf(a=%d,b=%d ,a,b);}
7.7.宽度使用十进制整数指定输入的宽度(即字符数)。例如:
scanf(],
输入12345678只给变量12345,其余部分被截断。另一个例子是:
scanf(MM ,a,
输入12345678会给1234,给5678。
/*注意:您的选择是C IDE */# include stdio . h void main(){ int a,b;scanf(MM ,a,b);printf(a=%d,b=%d ,a,b);}
练习:
# include stdio . h void main(){ int nianling;//年龄浮动分数线;score char艾蒿[30];//hobby printf(请输入年龄:);scanf(%d ,年灵);Printf(请输入分数:);scanf(%f ,fenshu);Printf(请输入一个爱好:);scanf(%s ,艾蒿);Printf(你的年龄是%d,分数是%f,爱好是%s ,年灵,分树,艾蒿);}
8.视频https://www.bilibili.com/video/BV1mS4y1R7KT/
来自的。转载请联系作者取得授权,否则将追究法律责任。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。