C 数据类型&运算符

C 语言 注释 的方式有两种:1.单行注释 //;2.多行注释 /*...*/

main() 函数是程序的主函数,是程序执行的入口,每个工程有且只有一个主函数

#include "stdafx.h"
#include 
int main(int argc, char* argv[])
{
    printf("Hello World!\n");    //简单的"Hello World"程序
    return 0;
}

类型修饰符 变量名称 = 初始值
字符必须用单引号括起来,程序中的所有标点符号都必须是英文标点,每一条语句必须以分号结尾

定义一个变量,用来存储身高

float heigh=1.73;

定义一个变量,存储 a

char lerrer='a';

若变量只定义不赋值,我们将无法确定该变量的默认初始值是多少,因为变量a定义的位置,可能会记录上次内存里的值,也会因操作系统以使用的编译器不同而有差异,所以 没有初始值的定义是极为不推荐的

//int age; 
int age=0;

一次定义多个同类型变量

int num1=0, num2=0, num3=0;

= 为赋值运算符,将右边的内容赋值给左边的变量,等号左边必须是变量,赋值后会将以前的内容覆盖

num1=10;    //num1原本的0值将被覆盖
num3=5;

等号右边可以是变量,把右边变量的值赋值给左边变量

num2=num3;    //num2的值为5

练习:定义两个整型变量并赋初始值,交换两个变量的值

int a1=1,a2=2,a3=0;
  printf("交换前a1=%d,a2=%d\n",a1,a2);
a3=a1;
a1=a2;
a2=a3;
  printf("交换后a1=%d,a2=%d\n",a1,a2);

求两个整数的和

int t1=15,t2=10;
int result=0; 
result=t1+t2; 
result=t1+25;    
printf("result=%d\n",result);

求两个数的差

result=50-t2;    
printf("result=%d\n",result);

求两个数的积

result=t1*t2;    
printf("%d\n",result);

单精度默认精确 6 位小数

float fl1=5.5,fl2=2.0; 
float fr=0.0;   
fr=fl1*fl2;  
printf("fr=%f\n",fr);

运行截图.png

两个整数相除,结果取整数部分
注释:任意一边为小数,则结果为小数

result=t1/t2;    
printf("result=%d\n",result);

a. 将浮点型数赋值给整型数,会舍弃小数
b. 将整型数赋值给浮点型数,数值变量,类型变为浮点型数

result=t1/fl2;   
printf("%d\n",result);
fr=t1/t2;    
printf("%f\n",fr);

取余数 %,两边必须为整型

result=t1%t2;    
printf("%d\n",result);

复合算术运算:+=-=*=/=%=

t1=20,t2=50; 
result=t1+t2;   
t1+=t2;  
printf("result=%d,t1=%d\n",result,t1);  

t1=50,t2=20;    
t1-=t2;  
printf("t1=%d\n",t1);   

t1=105,t2=10;   
t1/=t2; 
printf("t1=%d\n",t1); 

float t3=100.0,t4=5.5;  
t3/=t4;  
printf("t3=%f\n",t3); 

float t5=100.00;    
t5/=t2;  
printf("t5=%f\n",t5);   

t1=23,t2=5; 
t1%=t2;
result=t1%t2;  //t1的值为3 
printf("r=%d,t1=%d\n",result,t1);

自增和自减 ++--,运算单独存在

t1=10;  
t1++;   
//++t1;  
printf("%d\n",t1);  

t2=15;  
t2--;   
printf("t2=%d\n",t2);

参与其他运算时,运算符在前,先自身运算,再参与运算

t1=15,t2=20;    
result=t1+(--t2);    
printf("result=%d,t2=%d\n",result,t2);  

运算符在后,先参与运算,再自身运算

t1=15,t2=20; result=t1+(t2--);   printf("result=%d,t2=%d\n",result,t2);
    
t1=15,t2=20; 
result=t1+(++t2);    
printf("result=%d,t2=%d\n",result,t2);  

t1=15,t2=20; 
result=t1+(t2++);    
printf("result=%d,t2=%d\n",result,t2);

表达式:常量、变量、运算符

输出函数 printf()

格式:printf ("[普通字符][占位符][转义字符]"[,常量和变量列表])
[ ]:代表内容可选
占位符:① 代表要输出的常量或者变量,有占位符就必须有常量和变量列表;② 不同类型的变量,需要对应使用不同的占位符;③ 占位符的个数要与变量列表中的个数一致

printf("%d\n",10);
输出格式 名称 关键字
%c 字符型 char
%d 整型 int
%hd 短整型 short
%ld 长整型 long
%f 单精度 float
%lf 双精度 double

普通字符,照原样输出,普通字符是除占位符和转义字符外的所有字符

printf("我是普通字符\n"); 
printf("*\n**\n***\n****\n*****\n");
转义字符 作用
\n 换行
\t 跳一个制表格(Tab)
\ 代表一个反斜线字符'''
%% 代表一个百分号字符'%'

常量和变量列表中有多个的时候用逗号隔开,普通字符、占位符、转义字符,可以多个使用,也可以混合使用

%-m.nf

m: 域宽,代表占位符的宽度;当域宽小于内容宽度,按内容宽度
n: 代表小数位数
-: 靠左对齐;默认靠右对齐

printf("fl1=%-10.3f\n",fl1);

输入函数 scanf()

格式:scanf ("占位符",变量列表)
功能:将占位符对应的数据输入到对应的变量中
占位符:和 printf 函数中的占位符一样
变量列表:每个变量前面必须加 &

注释:如果有除占位符以外的字符,这些字符必须原样输入,输入以回车结束,不能包含转义字符

int a=0.0,b=0.0;    
printf("请输入两个整数:"); //取地址符
scanf("%d%d",&a,&b);    
printf("a=%d,b=%d\n",a,b);

练习:编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的 20 美元、10 美元、5 美元和 1 美元来付款

#include "stdafx.h"
#include 
int main(int argc, char* argv[])
{ 
  int b=0.0; 
  printf("Enter a dollar amout:"); 
  scanf("%d",&b); 
  int b1=b/20,b2=b%20/10,b3=b%10/5,b4=b%5/1; 
  printf("$20 bills:%d\n$10 bills:%d\n$50 bills:%d\n$1 bills:%d\n",b1,b2,b3,b4); 
  return 0;
}
C 数据类型&运算符_第1张图片
运行结果
End of File

行文过程中出现错误或不妥之处在所难免,希望大家能够给予指正,以免误导更多人,最后,如果你觉得我的文章写的还不错,希望能够点一下喜欢关注,为了我能早日成为签约作者献上一发助攻吧,谢谢!^ ^

你可能感兴趣的:(C 数据类型&运算符)