实验一:判断成绩等级。

给定一百分制成绩,要求输出成绩的等级。90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”。 分别用if和用switch语句实现

#include <stdio.h>
int main()
{
int a;
printf("请输入你的分数:\n");
scanf("%d",&a);
if (a<0||a>100)
{
printf("数据输入错误!\n");
}
else if(a>=90)
{
printf("你的成绩为A\n");
}
else if(a>=80)
{
printf("你的成绩为B\n");
}
else if(a>=70)
{
printf("你的成绩为C\n");
}
else if(a>=60)
{
printf("你的成绩为D\n");
}
else
{
printf("你的成绩为E\n");
}
return 0;
}

  

知识点:

1:if  else if语句

#include <stdio.h>
int main()
{
int a,b;
printf("请输入你的成绩:\n");
scanf("%d",&a);
if (a>100||a<0)
{
printf("数据输入错误!\n");
}
else
{
switch (b=a/10)
{
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");
}
}
return 0;
}

  

知识点;

1:switch语句

2:if语句,内套switch语句

实验总结:
1:else 语句同行结尾不加 ;
2:记得验证
3:case 语句后面只接字符。

实验二:判断整数位数及逆序输出。

输入一个不多于5位数的正整数,判断它是几位数并逆序输出。注意验证数据的合法性。

#include <stdio.h>
int main()
{
int a, b,c,d,e,f,g;
printf("请输入一个数:\n");
scanf("%d",&a);
if (a>=10000&&a<100000)
{
printf("该数是五位数\n");
b=a%10;
c=a/10%10;
d=a/100%10;
e=a/1000%10;
f=a/10000;
g=10000*b+1000*c+100*d+10*e+1*f;
printf("倒序数为:%05d",g);
}
else if (a>=1000&&a<10000)
{
printf("该数是四位数\n");
b=a%10;
c=a/10%10;
d=a/100%10;
e=a/1000;
g=b*1000+c*100+d*10+e*1;
printf("该数的倒序数为:%04d",g);
}
else if (a>=100&&a<1000)
{
printf("该数是三位数\n");
b=a%10;
c=a/10%10;
d=a/100;
g=b*100+c*10+d*1;
printf("该数的倒序数是:%03d",g);
}
else if (a>=10&&a<100)
{
printf("该数是两位数\n");
b=a%10;
c=a/10;
g=b*10+c*1;
printf("该数的倒序数为:%02d",g);
}
else if (a>=0&&a<10)
{
printf("该数为个位数\n");
printf("该数的倒序数为%d",a);
}
else
{
printf("intput error");
}
return 0;
}

  

知识点:

1:if  else if语句

2:求某个数某一位数的值

实验总结:
1:注意分号的放置位置。
2:修饰符的正确使用
3:计算某位数取值时记得验证

实验三:回文数问题

给定一个5位数,判断它是否是回文数。例如:12321是回文数。回文数的特点是个位和万位相同,十位和千位相同。

#include <stdio.h>
int main()
{
int a,b,c,d,e;
printf("请输入一个五位数:\n");
scanf("%d",&a);
b=a%10;
c=a/10000;
d=a/10%10;
e=a/1000%10;
if (b==c&&d==e)
{
printf("该数为回文数");
}
else
{
printf("该数不是回文数");
}
return 0;
}

  

实验总结:
1:scanf的取地址符&&&&&&&
2:求某一位数的灵活多变

实验四:计算分段函数

y=-x+2.5                         0 <= x < 5

y=2-1.5(x-3)(x-3)        5 <= x < 10

y=x/2-1.5                     10 <= x < 20

输入x的值(x为整数),输出y的值,结果保留3位小数。

#include <stdio.h>
int main()
{
int x;
float y;
printf("请输入一个数:\n");
scanf("%d",&x);
if (x<0||x>=20)
{
printf("数据输入错误!\n");
}
else if (x>=0&&x<5)
{
y=x+2.5;
printf("y的值为%.03f",y);
}
else if (x>=5&&x<10)
{
y=2-1.5*(x-3)*(x-3);
printf("y的值为%.03f",y);
}
else
{
y=x/2-1.5;
printf("y的值为%.03f",y);
}
return 0;
}

  

知识点:if    else if 语句

实验总结:
1:float的格式字符为f
2:整数做除,只输出整数。
3:保留小数修饰符为 .n

第二次C语言作业的更多相关文章

  1. 我的第二次C语言作业

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11422 这个作业要求在哪里 https://www.cnblog ...

  2. 第二周c语言PTA作业留

    6-1 计算两数的和与差(10 分) 本题要求实现一个计算输入的两数的和与差的简单函数. 函数接口定义: void sum_diff( float op1, float op2, float psum ...

  3. 第二章 C语言编程实践

    上章回顾 宏定义特点和注意细节 条件编译特点和主要用处 文件包含的路径查询规则 C语言扩展宏定义的用法 第二章 第二章 C语言编程实践 C语言编程实践 预习检查 异或的运算符是什么 宏定义最主要的特点 ...

  4. OO第二次博客作业——电梯调度

    OO第二次博客作业——电梯调度 前言 最近三周,OO课程进入多线程学习阶段,主要通过三次电梯调度作业来学习.从单部电梯的傻瓜式调度到有性能要求的调度到多部电梯的调度,难度逐渐提升,对同学们的要求逐渐变 ...

  5. C语言作业评价标准

    C语言作业评价标准 作业内容: 每周作业分为基础作业.挑战作业和预习作业: 基础作业为本周所学内容的巩固: 挑战作业包括但不仅限于所学知识的综合运用: 预习作业为下周所学内容的任务单,要求必须在课前完 ...

  6. OO第二次博客作业—17373247

    OO第二次博客作业 零.写在前面 OO第二单元宣告结束,在这个单元里自己算是真正对面向对象编程产生了比较深刻的理解,也认识到了一个合理的架构为编程带来的极大的便利. (挂三次评测分数 看出得分接近等差 ...

  7. [编程笔记]第二章 C语言预备知识

    /*第二讲 C语言预备专业知识 1.CPU 内存条 硬盘 显卡 主板 显示器之间的关系 CPU不能直接处理硬盘上的数据 文件存储在硬盘,当运行时,操作系统把硬盘上的数据调用到内存条上. 图像以数据的形 ...

  8. C#语言————第二章 C#语言快速热身

    第二章    C#语言快速热身 ***********一.选择结构**************** 1:if选择结构与java的if选择结构语法完全相同 2:switch选择结构 ①:常量表达式的值可 ...

  9. 第一次c语言作业。

    第一次c语言作业 作业1 2.1 你对软件工程专业或者计算机科学与技术专业了解是怎样? 我认为计算机科学与技术是研究信息过程.用以表达此过程的信息结构和规则及其在信息处理系统中实现的学科.这门学科是为 ...

随机推荐

  1. virtualbox 使用USB引导启动安装系统

    想要测试u盘系统引导有没有问题,从u盘中启动我烧录的Android x86系统. 这种方式可以在已有空的虚拟机上直接启动U盘中的系统. 百度上能搜到的方式都是使用CMD命令(懒人表示太麻烦--),so ...

  2. flex 布局 初次接触这个好使又不是特别好用的布局方法

    刚开始学前端的童鞋们应该也是一样先学习的table然后再学习了盒子模型,感觉终于学会了简单的网页布局,使用各种display,float,position绞尽脑汁给页面布局成自己想要的页面样式,然而, ...

  3. ElasticSearch优化配置

    ################################################################### /etc/elasticsearch/elasticsearch ...

  4. 如何使用Chrome Timeline 工具(译)

    [原文地址]https://developers.google.com/web/tools/chrome-devtools/profile/evaluate-performance/timeline- ...

  5. SpringMvc JSON 406,吐血。。。。

    解决方法一: 1.导入jackson-core-2.5.1.jar和jackson-databind-2.5.1.jar 2.Spring配置文件添加: 1 spring3为:org.springfr ...

  6. MVC4 +EasyUI 使用TreeGrid 方法

    用easyui已经有2年了,换了新环境,要求用mvc开发,所以想把原来的项目直接用mvc重构. 在使用TreeGird的时候出现了问题,发现在转换为treegrid的json 很费劲,一直都是用的ea ...

  7. 关于Failed to install helloworld.apk on device 'emulator-5554!的一个解决办法

    好不容易架好了android环境,把该安得都安好了,结果发现在安装过程中创建一个虚拟设备映象就占用了c盘34g的空间,我的系统盘差点瘫了,看来以后就只能先用这一个虚拟设备调试了, 接着说上边这个问题, ...

  8. VMware下安装Linux系统,ORACLE软件,DBCA建库

    操作系统安装   在vmware下安装Linux (OEL5.6),用于数据库服务器 1.打开vmware,选择"创建新的虚拟机"       2.选择自定义安装   3.选择虚拟 ...

  9. android的四层体系结构,基于mvc三层结构浅析

    从多方面理解Android体系结构 1.以分层的方式来看Android 安卓体系结构分为四层. 首先看一下官方关于Android体系结构的图: 1).Linux Kernel:负责硬件的驱动程序.网络 ...

  10. [手机取证] 绕过屏幕锁定启用调试模式-For Android 4.4.2

    Google在Android 4.x中引入了调试信任机制,类似于iOS,在设备有屏幕密码的情况下首次连接(或未记住计算机)的情况下, 需要首先打开屏幕锁定后才可进行调试启用操作. 在Android 4 ...