几个基本类型数据
#include "stdio.h"
int main()
{
/*
int count=0;
count=3;
printf("I have %d bags\n",count);--
*/
/*
int count=3;
printf("I have %2d bags\n",count);
*/
int count=0;
count=3;
printf("I have %02d bags\n",count);//位数不够0来凑—如13:5与13:05
float score=3.1415926 ;
printf("%.2f\n",score);//显示3.14
中文占据两个字符
char choose='c'
printf("%c",choose); //显示 ?(意思不能识别)
正确— char choose='c';
非零即1,零即假0
bool status=true;
printf("%d",status);
scanf——格式化输入
对应缓冲区”取”
然后终端对应
int pwd=0;
scanf("%d",&pwd);
return 0;
}
%d
int pwd=0;
scanf("%d",&pwd);
printf("pwd=%d\n",pwd);——对应pwd=0
而
scanf("pwd%d",&pwd);——中的pwd%d是输入格式
如输入twenty-one中的-时就可以这样
scanf("%s-%s")
if
某种条件成立才做事情
if(条件-true非0-false=0)
{
}
一般这样搭配:
if(某个条件)
{
条件
}
else
{
}
PS:
else还可以换成 else if 搭配
运算符
/(取整) %(取余) + - *
&&(且) ||(或)
+= -= *= /=
++(自增) --(自减)
==(判断相等)
!=(不等于)
`2/3=1; 2%3=1;
关于自增和自减
.......
int i=0;
scanf("%d",&i);
if(i++>1)
{
printf("%d",i);
}
else
{
printf("Obviously this 'i' is not the right one.");
}
return i;//返回i=1
.......
//显然会显示else 语句中的句子;但最后返回值显示的i却是1;即表明此时的i++是先加再用。
而自减也是同样的道理;对于++i(此类型的)则是先加再用,最后若返回的这个i,则也是加1后的i。
数组
有按顺序查找和二分查找
按顺序查找
不用排序,直接一 一对应,但是数据大了后不好查
二分查找
要按顺序排列,数据大时比较快
实现(dev c++)
输入一个名字 ,输入一个年龄——“名字” 'age is
printf("请输入年龄:");
int age =0;
scanf("%d",&age);
char* gewei[]={"","one","two","three","four","five","six","seven","eight","nine"};
char* temp[]={"eleven","twelve","thirteen","foureen","fifteen","sisteen","seventeen","eighteen","nineteen"};
char* shiwei[]={"twenty","thirty","fourty","fifty","sixty","seventy","eighty","ninety"};
char* name; //保存每次取出的字符串
if(age>=0&&age<=9)
{
name=gewei[age]; //原本应是age+1
}
else if(age>=10&&age<=19)
{
int sg=age%10;
name=temp[sg];
}
else if(age>=20&&age<=29)
{
char* sge=age%10;//从此处,当数为21时取余为1,对应个位数组中的two,因此不行,所以此时可返回去添加一个空白" ”“ ",而第一个条件中的age+1也应该更改,变成age,发现也可以实现。这体现了程序的不断优化
char* sshi=age/10;
printf("your age is %s-%s",sge,sshi);//从20到99
return 0;//程序暂且写到这儿,提前结束。
}
printf("your age is %s\n",name);
return 0;
}