第三单元分支结构

第三单元分支结构

持续更新:

3-1

数据少,例举仅有的情况然后交换。。。

#include<stdio.h>
int main()
{
	int a, b, c;
	int tem1 = 0, tem2 = 0, tem3 = 0;
	printf("请输入三个数 : ");
	scanf("%d%d%d",&a,&b,&c);
	if(a<b&&a<c)
	{
		 if(b>c)
		{
			tem1	=	b;
			b	=	c;
			c	=	tem1;	
		} 
		printf("这三个数从小到大的顺序是:%d %d %d \n", a, b, c);
	} 
	if(b<a&&b<c)
	{
		 if(a>c)
		{
			tem3	=	a;
			a	=	c;
			c	=	tem3;	
		} 
		printf("这三个数从小到大的顺序是:%d %d %d \n", b, a, c);
	} 
	if(c<a&&c<b)
	{
		 if(a>b)
		{
			tem2	=	a;
			a	=	b;
			b	=	tem2;	
		} 
		printf("这三个数从小到大的顺序是:%d %d %d \n", c, a, b);
	} 
	return 0;
}

可以用c++中的stl函数,和数组加上大一下学期学的数据结构中的排序算法搞,这是通法;

#include<iostream>
#include<algorithm>// 这个库函数里面有排序函数 
using namespace std;
int main()
{
	int a[124];
	for(int i = 0;i < 3;i++)
	{
		cin >> a[i];
	} 
	sort(a , a+3);//排序函数 
	for(int i = 0;i < 3;i++)
	{
		cout << a[i] <<"  ";
	}
	cout<<endl;
	return 0;
	
 } 

3-2

通过能不能被2整除判断是否为奇偶数

#include<stdio.h>
int main()
{
	int n;
	printf("输入一个数为: ");
	scanf("%d", &n);
	if(n%2==0)//看能不能被2整除来判断是否为奇偶数;
		printf("偶数\n") ;
	else
		printf("奇数\n") ;
	return 0;
 } 

3-3

掌握如何求一个整数的个位,十位,百位啥的

#include<stdio.h>
int main()
{
	int a,b,c,x;
	scanf("%d",&x);
	a=x%10;//取出个位
	b=x/10%10;//取出十位
	c=x/100;//取出百位
	if(a*a*a+b*b*b+c*c*c==x)
		printf("yes\n");
	else
		printf("no\n");	
	return 0;
}

3-4

这题用后面的知识才能真正解决,通过两个短边之和大于第三个长边边来判断

#include<bits/stdc++.h>//万能头件
using namespace std;
int main()
{
    double a[3];
    cin>>a[0]>>a[1]>>a[2];
    sort(a,a+3);
    if(a[0]+a[1]>a[2])
    {
        cout<<"yes";
    }
    else
    {
        cout<<"no";
    }
}

3-5

这是通过ACSLL码做的

#include<stdio.h>
int main()
{
	char s;
	scanf("%c",&s);
	if(s>='a'&&s<='z')
		s -= 32;
	printf("%c\n", s);
	return 0;
}

还有一种通过字符函数的

见书上p346

#include<stdio.h>
#include<string.h> 
#include<ctype.h>
int main()
{
	char s;
	s = getchar();//相当于scanf("%c",&s);
	if(islower(s))
		printf("%c\n", toupper(s));
	else
		printf("%c\n", s);	  
	return 0;
}

3-6

#include<stdio.h>
#include<string.h> 
#include<ctype.h>
int main()
{
	char s;
	int a;
	s = getchar();//相当于scanf("%c",&s);
	if(islower(s))
		a = s-96;
	if(isupper(s)) 
		a = s-64;
	printf("%d\n", a);	  
	return 0;
}

3-7

首先知道什么是闰年

#include<stdio.h>
int main()
{
	int year;
	scanf("%d",&year);
	if((year%400 == 0)||(year%4==0)&&(year%100 != 0))
		printf("yes!\n");
	else
		printf("no!\n");
 } 

3-8

#include<stdio.h>
int main()
{
    int a,b,c,n=0,i,j;
    printf("请输入年月日: ");
    scanf("%d%d%d",&a,&b,&c);
    for(i=1;i<b;i++)
    {
        if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
        n=n+31;
        else if(i==4||i==6||i==9||i==11)
        n=n+30;
        else
        {
            if(a%4==0&&a%100!=0||a%400==0)
            n=n+29;
            else
            n=n+28;
        }
    }
    n=n+c;
    printf("%d",n);
    return 0;
}

3-9

两种分支语句都实现一下吧;

第一传统的;

#include<stdio.h>
int main()
{
	int k;
	printf("请输入成绩: ");
	scanf("%d", &k);
	if(k>=90)
		printf("A\n");
	else if(k<90&&k>=80)
		printf("B\n"); 
	else if(k<80&&k>=70)
		printf("C\n");
	else if(k<70&&k>=60)
		printf("D\n");
	else if(k<60)
		printf("E\n")
	return 0;
}

第二种

#include<stdio.h>
int main()
{
	int k;
	printf("请输入成绩: ");
	scanf("%d", &k);
	int op=k/10;
	switch(op)
	{
		case 10: 	printf("A\n"); break;
		case 9: 	printf("A\n");break;
		case 8:  	printf("B\n");break;
		case 7:		printf("C\n");break;
		case 6:	 	printf("D\n");break;
		default: 	printf("E\n");
			break;
	}
	return 0;
}

最后一题分段函数:

自己根据前面的思考。。

第四张循环结构请看:https://blog.csdn.net/weixin_44146025/article/details/100751276

有不懂请加QQ 1126879663,想结交更多爱好编程的小伙伴请加学校acm新生群:849974104,有错误也麻烦更正。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114855.html原文链接:https://javaforall.net

(0)
上一篇 2021年9月28日 下午9:00
下一篇 2021年9月28日 下午10:00


相关推荐

  • transparentblt[通俗易懂]

    transparentblt[通俗易懂]透明位图的显示作者:王骏下载本文示例代码包含透明色的位图的绘制方法有多种,最简单的方法是调用现成的函数:TransparentBlt,也可以通过自己的代码实现类似TransparentBlt的功能,实现过程也有两种形式,一种是事先做一张掩码位图,另一种是动态生成掩码位图。本文将介绍动态生成掩码位图绘制具有透明区域位图的方法。一、TransparentBlt函数的使用TransparentBlt

    2025年8月25日
    3
  • Luyten 启动报错 This Application requires a Java Runtime Environment 1.7.0-1.8.0问题

    Luyten 启动报错 This Application requires a Java Runtime Environment 1.7.0-1.8.0问题Luyten 启动报错 ThisApplicat 7 0 1 8 0 问题问题解决方法功能快捷键合理的创建标题 有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中 居左 居右 SmartyPants 创建一个自定义列表如何创建一个注脚注释也是必不可少的 KaTeX 数学公式新的甘特图功能 丰富你的文章 UML 图表 FLowchart 流程图导出与导入导出导入问题解决方

    2026年3月20日
    2
  • [转]tika支持的文件格式

    [转]tika支持的文件格式SupportedDocumentFormatsThispagelistsallthedocumentformatssupportedbytheparsersinApacheTika1.13.Followthelinkstothevariousparserclassjavadocsformoredetailedinformatio…

    2025年7月11日
    10
  • python自行实现支付宝证书签名&验签全流程[通俗易懂]

    python自行实现支付宝证书签名&验签全流程[通俗易懂]支付宝Pythonsdk只有密钥签名,没有证书签名,下面是本人自行实现签名全流程证书签名需要新加alipay_root_cert_sn和app_cert_sn两个参数,这两个参数需要解析支付宝根证书(alipay_root_cert_sn)和应用公钥证书(appCerPublicKey_”app_id”.crt)得到:defsn_string():root_file_li=open(alipayRootCert.crt’,’r’).read().split(‘\n\n’)

    2022年5月11日
    50
  • 15款国内外知名优秀PHP集成环境推荐、PHP绿色集成环境推荐「建议收藏」

    15款国内外知名优秀PHP集成环境推荐、PHP绿色集成环境推荐「建议收藏」在我们学习某一门语言初始,我们最先做的就是环境的搭建。相对于PHP开发语言言来说,其环境的搭建已经不是很复杂了,这主要得益于现在越来越多的集成环境发布。本篇博文主要为大家列举一系列国内外知名优秀PHP集成环境,以及其各自的优缺点分析。1、PHPstudy    之所以先说PHPstudy主要是因为我使用这个使用的最多,绿色环境,解压就能用,切换版本相当方便,软件体积

    2022年6月28日
    91
  • 单模光纤和多模光纤的波长_用立式光学计测量轴径结论

    单模光纤和多模光纤的波长_用立式光学计测量轴径结论熔接必备住友82C菲尼特熔接教程首先是介绍下多模光纤和单模光纤区别:1、多模光纤是光纤通信最原始的技术,这一技术是人类首次实现通过光纤来进行通信的一项革命性的突破。2、随着光纤通信技术的发展,特别是激光器技术的发展以及人们对长距离、大信息量通信的迫切需求,人们又寻找到了更好的光纤通信技术—-单模光纤通信。3、光纤通信技术发展到今天,多模光纤通信固有的很多局限性愈发显得突出:①多…

    2022年8月30日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号