2021-11-06顺序结构程序设计

例3.1  求华氏温度100°F对应的摄氏温度

#include<stdio.h>
int main(void)
{
    /*定义2个整型变量,celsius表示摄氏温度,fahr表示华氏温度*/
    int celsius, fahr;
      scanf_s("%d", &fahr);
      printf("输入华氏温度:");
    celsius = 5 * (fahr - 32) / 9;
    printf("华氏温度为%d,摄氏温度为:%d\n", fahr, celsius);
    return 0;
}

 运行结果

 例3.2  由键盘输入一个小写字母,将其转换成大写字母输出

#include<stdio.h>
int main()
{
 char c1, c2;
 printf("请输入一个小写字母:");
 c1 = getchar();
 printf("%c,%d\n", c1, c1);
 c2 = c1 - 32;
 printf("%c,%d\n", c2, c2);
 return 0;
}

运行结果

 

3.2  C 语言的语句

1.说明语句(用于定义程序所使用的变量与类型)

2.表达式语句(由表达式加上分号“,”组成)

3.分支语句(实现分支控制过程,根据条件成立与否执行不同语句。有两种分支结构,即双分支if-eles语句与多分支的switch语句) 

4.循环语句(有3种,即for语句、while语句和do-while语句)

5.转向语句(break语句、goto语句、continue语句、return语句)

6.复合语句(用一对大括号{}将若干语句顺序组合在一起所形成的语句称为复合语句)

7.空语句(只由一个分号构成)

8.函数定义与调用(函数是完成特定功能的小模版,是C语言中唯一的一种子程序,常常在一个C程序在包含若干给函数,复杂的任务通过调用这些函数来完成)

9.输入与输出(C语言没有提供用于数据输入及输出的语句,所有的输入与输出都是通过系统提供y有关函数(如scanf()和printf()函数)来实现的)

3.3  数据的输入与输出

3.3.1  输入函数(printf()和输入函数(scanf())

1.printf()函数

(1)格式控制说明:按指定的格式输出数据,其格式为以%开头的格式控制字符,不同类型的数据采用不同格式控制字符,以说明输出数据的类型、形式、长度、小数位数等。例如,int型数据采用%d,float型和double型数据都采用%f。

(2)普通字符:在输出数据时,需要原样输出的字符。

例3.3  按指定格式输出整型数据示例

#include<stdio.h>
int main()
{
	int a = 1, b = 2, c = 3;
	printf("a=%d,c=%d\n", a, b, c);
	return 0;
}

 运行结果

 2.scanf()函数、

(1)格式控制说明:按指定的格式输入数据,其格式为以%开头的格式控制字符,不同类型的数据采用不同的格式控制字符。例如,int型数据采用%d,float型数据采用%f,而double型数据采用%If(%If其中的l是longd的首字母,不是数字1)。

(2)普通字符:在输入数据时,需要原样输入的字符。

3.3.2  整型数据的输入与输出

表3.1  printf()、scanf()函数中的格式字符(整型数据)

 表3.2  printf()函数中的格式修饰符

 

 例3.4  整型数据的输出示例

#include<stdio.h>
int main()
{
	int a = 123;
	long int b = 32770;
	printf("a=%d,b=%ld\n", a, b);
	printf("a=%o,b=%lo\n", a, b);
	printf("a=%#x,b=%#lx\n", a, b);
	printf("a=%d,b=%ld\n", a);
	printf("a+b=%ld", a + b, b);
	printf("输出结束!\n");
	return 0;
}

 运行结果

 例3.5整型数据的输入示例 

#include<stdio.h>
int main()
{
	int a, b;
	long int c;
	scanf_s("%d%d%ld",&a, &b, &c);
	printf("a=%d,b=%d,c=%ld\n",a,b,c);
	return 0;
}
	

运行结果

例3.6  带有修饰符的整型数据的输入输出示例

#include<stdio.h>
int main()
{
	int a, b, c, d;
	scanf_s("%2d3%d*d,%d%d", &a, &b, &c, &d);
	printf("a=%d,b=%d,c=%d,d=%d\n", a, b, c, d);
	printf("a=%4d,b=%-4d,c=%-4d,d=%4d\n", a, b, c, d);
	printf("a=%+4d,b=%+4d,c=%+4d,d=%+4d\n", a, b, c, d);
	return 0;
}

运行结果 

 

3.3.3  实型数据的输入和输出

 

 

 例3.7  实型数据的输入输出示例

#include<stdio.h>
int main()
{
	float f;
	double d;
	scanf_s("%f,%lf", &f, &d);
	printf("f=%f,d=%f\n", f, d);
	printf("f=%e,d=%e\n", f, d);
	printf("f=%4.2f,d=%.3f\n", f, d);
	return 0;
}

运行结果 

3.3.4字符型数据的输入和输出

1.使用scanf()函数和printf()函数对字符型数据进行输入输出

例3.8  字符型数据的输入输出示例

#include<stdio.h>
int main()
{
	char a, b, c;
	scanf_s("%c%c%c", &a, &b, &c);
	printf("a=%3c,b=%c,c=%c\n", a, b, c);
	return 0;
}
	

运行结果 

 

2.使用  getchar()函数和  putchar()函数对字符型数据进行输入输出

(1) getchar()的一般调用格式为:

ch=getchar();

运行时从键盘输入缓冲区读取一个字符,并赋值给变量ch。

(2)putchar()的一般调用格式为:

putchar(输出参数)

输出一个字符,输出参数是字符型变量或字符型常量。

例3.9 由键盘输入一个字符,将其输出到屏幕

#include<stdio.h>
int main()
{
	char ch;
	ch = getchar();
	putchar(ch);
	return 0;
}
	

运行结果 

 3.4 数学库函数

常用的数学库函数有:

1.指数函数exp(x):计算_{e}x。如exp(2.3)的值为9.974182。

2.绝对值函数fabs(x):计算|x|。如fabs(-2.8)的值为2.8。

3.以e为底的对数函数log(x):计算lnx。如log(123.45)的值为4.815836。

4.幂函数pow(x,y):计算_{x}y。如pow(1.3,2)的值为1.69。

5.平方根函数sqrt(x):计算\sqrt{x}。如sqrt(4.0)的值为2.0。

例3.10  输入一个球的半径,根据公式\frac{4\pi }{3}_{r}3计算并输出球的体积

#include<stdio.h>
#include<math.h>
#define PI 3.14
int main()
{
	float r, v;
	printf("输入半径r:");
	scanf_s("%f", &r);
	v = 4.0 / 3 * PI * pow(r, 3);
	printf("体积为:%.2f\n", v);
	return 0;
}

运行结果 

例3.11  求一元二次方程a_{x}2+bx+c=0的根

#include<stdio.h>
#include<math.h>
#define PI 3.14
int main()
{
	float a, b, c, x1, x2, p, q;
	printf("请输入三个系数:");
	scanf_s("a=%f,b=%f,c=%f", &a, &b, &c);
	p = -b / (2 * a);
	q = sqrt(b * b - 4 * a * c) / (2 * a);
	x1 = p + q; x2 = p - q;
	printf("x1=%5.2f\n", a, b, c);
	return 0;	
}

运行结果 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值