C语言基础知识:C语言中的控制语句

本文详细介绍了C语言中的控制语句,包括条件判断(if, if...else, if...else if...else, switch)和循环(while, do...while, for)。此外,还讲解了循环体中的跳转语句(break, continue, goto)。通过对这些语句的学习,读者可以更好地理解和运用C语言中的控制结构。" 108699012,5257195,Flink 广播变量详解,"['大数据开发', 'flink', '数据处理']
摘要由CSDN通过智能技术生成

目录

1. 条件判断语句

if(…) {…}

if(…) {…} else {…}

if(…) {…} else if(…) {…} … else if(…) {…} else {…}

switch() {case …: …; case …: …; … default: …;}

 2、循环语句

while语句

do while语句

for语句

3、循环体中的跳转语句

break语句。

continue语句。

goto语句。


C语言有九种控制语句。 可分成以下三类:

1. 条件判断语句

if语句、switch语句;

2 .循环执行语句

do while语句、while语句、for语句;

3. 转向语句

break语句、goto语句(此语句尽量少用,因为这不利结构化程序设计,滥用它会使程序流程无规律、可读性差)、continue语句、return语句。

1. 条件判断语句

if(…) {…}


1.一般形式:
if (表达式) {语句;}

表达式:
a,用非 0 值表示真,用 0 表示假;
b,if(flag) 相当于 if(flag!=0);
c,浮点数无法与 0 比较,只能用近似的值比较;例: 1e-6 等于1x10的-6次方可以看成0来使用;

2.用于单分支选择结构;
3.如含有交叉关系,使用并列的if语句;

例1:输出两个整数中的最大值

#include <stdio.h>
void main()
{
     int a,b;
     printf("请输入两个整数:");
     scanf("%d %d",&a,&b);
     if(a>b)
     {
     printf("max = %d\n",a);
     }
     if(a<b)
     {
     printf("max = %d\n",b);
     }
}

if(…) {…} else {…}

  1. 一般形式: if(表达式) {语句1; } else { 语句2;}
  2. 用于双分支控制的条件语句;
  3. 用于非此即彼的关系时;

例2:输出两个整数中的最大值

例2关于对于非法字符的检查与处理

#include <stdio.h>
void main()
{
	int a,b,max,data;
	printf("Input a,b:");
	data = scanf(" %d,%d",&a,&b);/*记录scanf()的返回值;*/
	if(data!=2)/*根据scanf()的返回值判断输入数据个数或者格式是否错误*/
    {
		printf("格式输入错误!");
		fflush(stdin);/*清除输入缓冲区中的错误内容(fflush()可能带来可移植性的问题)*/
	}
	else
	{
		max = a>b?a:b;/*三目运算符(a>b值为真则输出a的值,反之输出b的值)*/
		printf("%d\n",max);
	}

}

if(…) {…} else if(…) {…} … else if(…) {…} else {…}

  1. 一般形式:
    if(表达式1) { 语句1;}
    else if(表达式2) {语句2;}

    else if(表达式n){语句n;}
    else{语句n+1;}

  2. 用于多分支的控制的条件语句;

例3:判断字符

#include <stdio.h>
void main()
{
	char ch;
	printf("请输入一个字符:");
	ch = getchar();/*getchar、putchar专门用于字符输入输出;
				     getchar()写法上要写为 变量 = getchar();
					 putchar()用法为putchar(变量);
					 putchar('\n')输出一个控制符;
					 putchar('字母/字符');输出字母/字符;
					 */
	if(ch<=31)
	{
		printf("这是一个控制字符或通讯专用字符!\n");
	}
	else if(ch >= '0' && ch <= '9')
	{
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值