一:字符串输入输出函数
1:字符串输入函数gets
a:格式:char*gets(char*s)现在指针不懂的可以直接写成gets(s)
b:功能:从键盘输入一以回车结束的字符串放入字符数组中,并自动加'\0',
c:输入串长度应小于字符数组维数
d:与scanf函数不同,gets函数并不以空格作为字符串输入结束的标志
e:代码展示
#include
int main()
{
char a[5];
gets(a);
printf("%s \n",a);
return 0;
}
2:字符串输出函数put
a:格式:int puts(const char *s)一般可以写成puts(s)
b:功能:向显示器输出字符串(输出完,自动换行不需要\n)
c:说明:字符串必须以'\0'结束
d:代码展示
#include
int main()
{
char a[5];
char b[5];
gets(a);
gets(b);
puts(a);
puts(b);
printf("%s",a);
printf("%s",b);
return 0;
}
有puts和printf是为了编译时看出puts输出完自动换行
二:控制语句
1:if-else语句
a:if语句概述
if(表达式)
{语句块1;}
else
{语句块2; }
2:常见模式
简化形式,阶梯形式和嵌套形式
a:阶梯形式一般表示为:
if(表达式1){语句块1}
else
{ if(表达式2){语句块2}
else
{if(表达式3){语句块3}
else
{if(表达式4){语句块4}
}
}
}
b:代码展示(成绩等级代码)
#include
int main()
{
float scont;
printf("please intput scont: \n");
scanf("%f",&scont);
if(scont>100||scont<0)
{
printf("error");
return 0;
}
else
{
if(scont>=90)
{
printf("A \n");
}
else
{
if(scont<90&&scont>=70)
{
printf("B \n");
}
else
{
if(scont>=60)
{
printf("C \n");
}
else
{
if(scont<60)
{
printf("D \n");
}
}
}
}
}
return 0;
}
c:语句块,当有诺干条语句的时候,必须用{}括号括起来
d:表达式
1:一般情况下为逻辑表达式和关系表达式
如:if(a==b&&x==y){printf("%d \n",x);}
2:也可以是任意类型(包括整形,实型,字符型,指针类型)
如:if('a'){printf("%d \n",a);}
3:区分if(x=1)和if(x==1)的不同
if(x=1)是将x赋值为1,所以括号内为1为真,if(x==1)是用x的值和1比较相同为真不同为假
f:小作业输入三个数,从小到大排
#include
int main()
{
int a,b,c;
scanf("%d%d%d",&a,%b,&c);
if(a>b&&b>c)
printf("%d-%d-%d"c,b,a);
else
{
if(a>c&&c>b)
printf("%d-%d-%d",b,c,a);
else
{
if(b>c&&c>a)
printf("%d-%d-%d",a,c,b);
else
{
if(b>a&&a>c)
printf("%d-%d-%d",c,a,b);
else
{
if(c>a&&a>b)
printf("%d-%d-%d",b,a,c);
else
{
if(c>b&&b>a)
printf("%d-%d-%d",a,b,c);
}
}
}
}
}
return 0;
}
2:switch语句
a:switch语句的基本形式
switch(表达式)(表达式一般为变量)
{
case常量表达式1:语句块1;break;
case常量表达式2:语句块2;break;
case常量表达式3:语句块3;break;
default:语句块
}
b:每个常量表达式必须各不相同否则出现矛盾报错
c:当表达式的值和常量表达式的值相等时,就会执行case后的语句
d:case常量:只起语句标号的作用
f:break语句用于强行跳出switch体,一般一个case后接一个break,default分支后的break可以省去
e:多个case可以执行一条语句
g:switch中的表达式可以是整形,字符型表达式或枚举。
h:代码展示
1:基础switch代码
#include
int main()
{
int tep=1;
switch(tep)
{
case 1:
printf("kobe \n");
printf("forever \n");
break;
case 2:
printf("xuexi \n");
break;
case 8:
printf("juan \n");
break;
default:
printf("not 1 2 8 /n");
}
return 0;
}
成绩等级代码
#include
int main()
{
float scont;
printf("please intput scont: \n");
scanf("%f",&scont);
if(scont>100||scont<0)
printf("error \n");
else
{
switch((int)scont/10)
{
case 9:
printf("A \n");
break;
case 8:
printf("B \n");
break;
case 7:
printf("B \n");
break;
case 6:
printf("C \n");
break;
default:
printf("D \n");
}
}
return 0;
}
一定要记得case后接break