C语言基础(控制语句1)

程序设计离不开各种控制语句,这篇文章将重点介绍一些控制语句
C语言的控制语句主要有:for, while,if,switch,break, goto…

先来一个程序

#include <stdio.h>
int main (void)
{
    
    
	char ch;
	
	printf ("外面是否下雨,下雨输入Y,不下雨输入N\n");
	scanf ("%c", &ch);
	if (ch == 'Y' || ch == 'N'){
    
    
		if (ch == 'Y')
		{
    
    
			printf ("外面下雨记得带伞");
		}

		if (ch == 'N')
		{
    
    
			printf ("阳光明媚,玩的开心");
		}
		}
	else 
	{
    
    
		printf ("还不知道外面的天气哦");
	}
	return 0;
}

上述就是if语句的基本用法,一个典型的判断语句。先做第一步判断,是否输入正确的字符(检查错误)。在输入正确的字符之后,再判断输入字符是什么,按照程序设计的进行下去。
要注意:else 总是与其最近的一个没有配对的if相配对。

同样的,将上述程序也能改为switch语句。

#include <stdio.h>
int main(void)
{
    
    
	char ch;

	printf ("外面是否下雨,下雨输入Y,不下雨输入N\n");
	scanf ("%c", &ch);

	switch(ch)
	{
    
    
		case 'Y':printf ("外面下雨记得带伞");break;
		case 'N':printf ("阳光明媚,玩的开心");break;
		default :printf ("还不知道外面的天气哦");break;
	}
}

在用switch时,不要忘记case语句后面加上break。break语句(间断语句)的作用是跳出case语句的执行。如果漏用了break,就会出现向下不终止的继续执行。例如,上述程序中,省略三个break,在输入“Y”,则三行内容都会输出。这是需要注意的。

下面是一些if语句与switch语句的一些程序,方便练手。

1、输入两个两位数a,b,其中a不大于31,b最大不超过三位数,重新组成一个数c,a在左,b在右。
例:a = 23 , b = 30; c = 2330。

#include <stdio.h>
int main (void)
{
    
    
	int a, b, c, k;

	printf ("请输入两个数:\n");
	scanf ("%d%d", &a, &b);

	if (a < 0 && b < 0 && a > 99 && b > 99)
	{
    
    
		c = -1;
		printf ("输入的数据有误");
		}

	else 
	{
    
    
		if(b < 10)
			k = 10;
		else if (b < 100)
			k = 100;
		else if (b < 1000)
			k = 1000;
		c = a * k + b;
	}
	printf ("a = %2d, b = %3d, c = %5d", a, b, c);	
}

2、输入三个数,输出其中最大的数。

#include <stdio.h>
int main (void)
{
    
    
	int x, y, z;
	pritnf ("请输入三个数\n");
	scanf ("%d%d%d", &x, &y, &z);
	
	if (x > y)
		if (x > z)
			printf ("最大的数为%d\n", x);
		else 
			printf ("最大的数为%d\n", y);
	else 
		if (y > z)
			printf ("最大的数为%d\n");
		else
			printf ("最大的数是为%n");
}

3、输入一个月份,输出一个那个月的天数

#include <stdio.h>
int main (void)
{
    
    
	int m, d;
	printf ("请输入平年的月份:\n");
	scanf ("%d", &m);
	switch (m)
	{
    
    
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:d = 31;break;
		case 4;
		case 6:
		case 9:
		case 11:d = 30;break;
		case 2:d = 28;break;
		default :d = -1;break;
	}
	if (d == -1)
		printf ("输入月份错误!\n");
	else 
		printf ("平年%d的月份有%d天!\n", m, d);
}

4、输入月份,输出季节。

#include <stdio.h>
int main (void)
{
    
    
	int n;
	printf ("请输入月份:\n");
	scanf ("%d", &n);
	switch (n)
	{
    
    
		case 0:printf ("%d的月份是春季!\n");break;
		case 1:printf ("%d的月份是春季!\n");break;
		case 2:printf ("%d的月份是春季!\n");break;
		case 3:printf ("%d的月份是春季!\n");break;
		case 4:printf ("%d的月份是春季!\n");break;
		default :printf ("您输入的月份有误!!!\n");break;
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_49093912/article/details/109900551