C语言的基本用语
运算符
1./ 取整数部位 如7/2得3 注意:其和计算机的除法不同
2.% 取余数部分 如: 7/2得1
3.&&两个同事成立 且
4.|| 或 只要一个成立
5.++自增长 a++ :先使用、再加;++a:先加后使用
坑:会让人去判断a的值
如:
main(void)
{
int a=10,num;
num=(a++,a++,a++);
printf("num=%d\n",num);
return 0;
}
输出值是:num=12
解释:很多人会把此时num的值认为是13,但当执行第三个a++的时候由于先使用,再加,使得num先等于12,这时候先使用12这个数值带入下方执行;而执行前两个a++时其加地数值会带入下一个a中。
6.+= a+=2相当于a=a+2
7.-= a-=2相当于a=a-2
8.!= 表示不等于
9.==表示判断
10. = 表示赋值
基本语言
int 代表定义的数为整型,输出时用 %d表示输出的数
long代表定义的数为长整型,输出时用%ld表示输出的数
float代表定义的数为单精度浮点型,在32位机器上用4个字节来存储,输出时用%f表示表示输出的数
double代表定义的数为双精度浮点型,在32位机器上用8字节来表示,输出时用%f表示输出的数
char代表定义为字符型,输出时用%c表示输出的数
bool代表定义为布尔型,输出时用%d表示输出的数,且其只会显示1代表true或0代表false
初学编译注意点:
%f输出结果小数点后六位 若要取固定的小数点后位数,应用 %.所要取得位数f来表示
一个中文代表两个字符
不要在scanf()中随便输入格式,否则会使用户无法使用
int main (){
int money=0;
printf("输入钱数”);
scanf("-%d-",&money);
printf("你的资产是%d\n",money);
return 0;
}
此时当我们输入5000时再回车,会无法显示;
正确输入为:-5000-在进行回车,就会显示;
scanf()输入时一定要用&取地址;且当输入多个值时
int main(){
int a,d;
char b
scanf("%d %d %c",a,d,b);/*注意在输出格式说明符间应加于" ",这样在输入多位数时防止将第二部分的的值默认为第一部分;
如:输入1和12时 即112,系统会默认为第一个数为112;
系统会依次按顺序取出相应的值,若顺序错误,则报错;
%数字d 表示所输出的数的所占的宽度;而%0数字d 代表宽度不足时会自动在前方加0来补足宽度;
一个字符如果用 %d 表示则会显示字符所对应的Ascii码
附页1--计算税后工资小程序
计算要求 :g<5000 -> g=5000
g<8000-> g取税超出部分10%
g<10000-> g取税超出部分15%
g>10000-> g取税超出部分20%
#include
int main(){
int salary = 0;//记录工资
int tax = 0; //税
//接收输入
printf("请输入工资:");
scanf("%d",&salary);
//开始计算
if(salary < 5000){
pay = salary;
}else if(salary > 5000 && salary < 8000){
int tax = (salary - 5000)*0.1;
}else if(salary > 8000 && salary < 10000){
int tax = (salary-8000)*0.15 + 3000*0.1;
}else{
int tax = (salary - 10000)*0.2 + 2000*0.15
+ 3000*0.1;
}
printf("到手工资: %d",salary - tax;);
return 0;
}
附页2--输出英文年龄
如:输入 12
输出 your age is twelve
#include
//输入年龄 20
//your age is twenty;
int main(){
int age = 0;
//保存个位数 21%10 = 1
char* gewei[] = {"","one","two","three","four","five","six","seven","eight","nine"};
//保存10-19
char* temp[] = {"ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"};
//保存十位
char* shiwei[] = {"twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"};
printf("请输入年龄:");
scanf("%d", &age);
char *name;//保存每次取出的字符串
if(age < 10){
//直接访问各位数数组
name = gewei[age];
}else if(age >= 10 && age <= 19){
//获取个位数
int index = age % 10;
name = temp[index];
} else{
//获取个位数
int g = age % 10;
//获取十位数
int s = age / 10;
//取出对应的单词
int sString = shiwei[s-2];
int gString = gewei[g];
printf("your age is %s-%s\n"
,sString,gString);
//程序还未运行完毕就提前结束
return 0;
}
printf("your age is %s\n",name);
return 0;
}