2021-01-31

C Language  Day02

本节内容

  • 基本结构
  • 基本语句
  • 基本函数
  • 顺序结构程序设计举例

1.基本结构

顺序结构、分支结构、循环结构

2.基本语句

表达式语句:表达式加上分号

函数调用语句:函数名、实际参数加上分号

控制语句:if语句、do while语句、while语句、break语句、goto语句

复合语句:多个语句用{}括起来组成的一个语句

空语句:只有分号

#include <stdio.h>
void main(){
	while(getchar()!='\n'){
		;
	}

}

stdio是standard input&output的意思;由于printf和scanf函数使用频繁,可以不加#include <stdio.h>;

3.基本函数

putchar 函数(字符输出函数),其功能是在显示器上输出单个字符;

如putchar('A');putchar('\101');

getchar 函数(输入函数)

getchar();通常把输入的字符赋予一个字符变量,如char c;c=getchar();

#include <stdio.h>
void main(){
	char c;
	printf("input a char:");
	c=getchar();
	putchar(c);
}

printf 函数(格式输出函数)

printf("格式控制字符串",输出表列)

%d,十进制整型输出;

%ld,十进制长整型输出;

%c,字符型输出;

%o,八进制输出;

%f,小数形式输出单、双精度实数;

%s,输出字符串;

#include <stdio.h>
void main(){
	int a=15;
	float b=123.1234567;
	double c=12345678.1234567;
	char d='p';
	printf("a=%d,%5d,%o,%x\n",a,a,a,a);
	printf("b=%f,%lf,%5.4lf,%e\n",b,b,b,b);
	printf("c=%lf,%f,%8.4lf\n",c,c,c);
	printf("d=%c,%8c\n",d,d);

}

scanf 函数(格式化输入函数)

scanf("格式控制字符串",地址列表);与printf函数不同的是不能显示非格式字符串,即不能显示提示字符串。

地址列表中给出各变量的地址,地址由地址运算符"&"后跟变量名组成。

如&a,&b 分别表示变量a和变量b的地址。这个地址就是编译系统在内存中给a,b变量分配的地址。

#include <stdio.h>
void main(){
	int a,b,c;
	printf("input a,b,c\n");
	scanf("%d,%d,%d",&a,&b,&c);
	printf("a=%d,b=%d,c=%d\n",a,b,c);

}

 scanf格式控制串"%c %c"之间有空格时,输入的数据之间可以有空格间隔。

#include <stdio.h>
void main(){
	char a,b,c;
	printf("input char a,b,c\n");
	scanf("%c,%c,%c",&a,&b,&c);
	printf("%d,%d,%d\n%c,%c,%c\n",a,b,c,a-32,b-32,c-32);

}

4.顺序程序设计举例

输入三角形三边长,求三角形的面积;

三角形三边长a,b,c,面积公式area=√s(s-a)(s-b)(s-c),s=(a+b+c)/2

#include <stdio.h>
#include <math.h>
void main(){
	float a,b,c,s,area;
	scanf("%f,%f,%f",&a,&b,&c);
	s=1.0/2*(a+b+c);
	area=sqrt(s*(s-a)*(s-b)*(s-c));
	printf("a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n",a,b,c,s);
	printf("area=%7.2f\n",area);
}

求一元二次方程的根,ax^2+bx+c=0,设b^2-4ac>0。

#include <stdio.h>
#include <math.h>
void main(){
	double a,b,c,disc,x1,x2,p,q;
	scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c);
	disc=b*b-4*a*c;
	p=-b/(2*a);
	q=sqrt(disc)/(2*a);
	x1=p+q;
	x2=p-q;
	printf("\nx1=%5.2f\nx2=%5.2f\n",x1,x2);
}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值