C语言学习(2)
今天学的内容多些,好好做记录。
一、变量命名。
(1)只能由数字,字母,下划线三种字符组成,不能以数字开头。
(2)变量名不能使用除了“_”以外的特殊符号。
(3)不可以使用关键字命名。
二、数据类型。
数值:整型:int(32位),short int(16位),long int(32位),long long int(64位)
非整形:float(32位),double(64位)
非数值型:char(6位)
注意:(1)变量名不能重复。
(2)一条语句可以重复多个类型相同的变量。
三、占位符。
(1)int %d
(2)float %f
(3)double %lf
注意:%.xf x的值可以控制小数点的位数。eg:%.4f,表示小数点后4位。%.3lf,表示小数点后3位。
%% 打印%
%%%%打印两个%
四、scanf函数。
scanf(“%d”,&num) 双引号中是数据类型 &num表示提示符地址
五、getchar,putchar
getchar()输入字符
putchar()输出字符
代码:
void main()
{char ff; //定义类型
ff=getchar(); //getchar输入ff的值,输入值放在缓冲区
六、++和--
int num1=1;
int num2;
num2=num1++;
printf("num2=%d",num2);
这种情况++,输出的num2的值没有++,num1进行了++运算
结果num2=1 num1=2
int num1=1;
int num2;
num2=++num1;
printf("num2=%d",num2);
这种情况++,num1先进行++,然后赋值给num2
结果num2=2 num1=2
- -情况同上。
num=num+5 和 num+=5 等价写法
七、自动类型转换。
原则:把表示范围小的类型的值转换为表示范围大的类型的值。
short->int->long->float->double
八、sizeof运算符。
作用:可以获取数据类型占用内存的大小。
用法:sizeof(type int)//输出int类型占用的字节数
sizeof(1996.0f)//1996.0f是float类型,所以求得是float对应的字节数。
九、其他。
c语言中,0表示假,1(非0)表示真
十、作业。
(1)接受两个整数,分别保存在两个变量中,通过第三个变量实现互换。
//1.定义a,b,c
//2.把a的值放在c中,然后b的值给a,然后c的值给b
int a,b,c;
scanf("%d %d",&a,&b);
c=a;
a=b;
b=c;
printf("%d %d\n",a,b);
(2)某公司为员工提供了基本工资,物价津贴及房租津贴,其中物价津贴占基本工资的40%,房租津贴占基本工资额20%,编写一个程序计算实际工资,要求输入基本工资,计算应该支付员工的实际工资。
//1.先思考需要定义几个变量及变量类型:基本工资,实际工资,物价津贴,房租津贴
//2.物价工资=基本工资*40/100 房租津贴=基本津贴*20/100
//3.实际工资=基本工资+物价工资+房租津贴
float jibengongzi;//基本工资
float wujiajintie;//物价津贴
float fangzujintie;//房租津贴
float shijigongzi;//实际工资
printf("***********工资单***********\n");
printf("输入员工的基本功能工资:");
scanf("%f",&jibengongzi);
wujiajintie=jibengongzi*40/100;
fangzujintie=jibengongzi*20/100;
shijigongzi=jibengongzi+wujiajintie+fangzujintie;
printf("员工的实际工资:%.2f\n",shijigongzi);}
(3)将下列数字按顺序转换成对应的ASCII码,打印出对应的ASCII并进行组合。
int ch1=97,ch2=110,ch3=103,ch4=101,ch5=108, ch6=97,ch7=66,ch8=97,ch9=98,ch10=121;
printf("输出字母:");
printf("%c%c%c%c%c%c%c%c%c%c\n",ch1,ch2,ch3,ch4,ch5,ch6,ch7,ch8,ch9,ch10);
(4)某游戏中近战武器的实际伤害计算公式为:
武器实际最大伤害=武器最大伤害*(玩家力量+100)/100
现有如下武器,武器最大伤害256,要求输入玩家的力量,打印武器实际最大伤害。
//1.需要定义几个变量:武器实际最大伤害,武器最大伤害,玩家力量
//2.什么类型: double int double
//计算伤害值
double wanjialiliang;//玩家力量
double shijishanghai;//实际伤害
int maxsh=256;//武器最大伤害
printf("玩家力量=");
scanf("%lf",&wanjialiliang);
shijishanghai=maxsh*(wanjialiliang+100)/100;
printf("最大:%.2lf\n",shijishanghai);
That's all!!!期待接下来的学习!!
注意:可能存在中文字符现象,如遇问题,细心修改。加油!!!

浙公网安备 33010602011771号