/*若编译出现错误:
[Error] 'for' loop initial declarations are only allowed in C99 or C11 mode
请更换C99标准进再行编译*/
#include <stdio.h>
#include <stdlib.h>
#define PI 3.14 //定义常量PI
#define N 10
void function_1(void);
void function_2(void);
void function_3(void);
void function_4(void);
void function_5(void);
void function_6(void);
void function_7(void);
void function_8(void);
void function_9(void);
void function_10(void);
void function_11(void);
void function_12(void);
void function_13(void);
int function_14(int a, int b);
void function_15(int *a,int *b);
void function_16(void);
void function_17(void);
void function_18(void);
void function_19(void);
void function_20(void);
void function_21(void);
void function_22(void);
void function_23(void);
void function_24(void);
int main(){
printf("***************************************************************\n\
* 小小计算器 *\n\
* 1 加法 *\n\
* 2 减法 *\n\
* 3 乘法 *\n\
* 4 除法 *\n\
* 5 判断数字的位数 *\n\
* 6 计算圆面积 *\n\
* 7 判断闰年 *\n\
* 8 成绩转换 *\n\
* 9 计算从1到输入数之间的奇数和 (for) *\n\
* 10 计算从1到输入数之间的偶数和 (while) *\n\
* 11 输出从1到输入数之间所有3的倍数 (do-while) *\n\
* 12 求即被3整除又被5整除的数 *\n\
***************************************************************\n\
* 13 求水仙花数 *\n\
* 14 求最大值 *\n\
* 15 求最大最小值 *\n\
* 16 冒泡排序 *\n\
* 17 矩阵转置 *\n\
* 18 求对角线和 *\n\
* 19 统计单词个数 *\n\
* 20 静态创建链表 *\n\
* 21 动态创建链表 *\n\
* 22 学生成绩排序 *\n\
* 23 学生成绩普涨10分 *\n\
* 24 学生成绩链表 *\n\
* 25 退出 *\n\
***************************************************************");
label:printf("\n请选择您要进行的运算:");
/*int num1, num2, answer; //实验3定义的变量
float num3, num4, answer2;
double R, S;
int value, temp, bits, one_p, two_p, three_p; //实验4定义的变量
int year, score; //实验5定义的变量
long long int num5, answer3, o; //实验6定义的变量*/
int max, num1, num2;
int choose;//getchar只能接收单个字符,不适合此时超越9个的switch选择
scanf("%d", &choose);
switch(choose){
case 1:
function_1();
break;
case 2:
function_2();
break;
case 3:
function_3();
break;
case 4:
function_4();
break;
case 5:
function_5();
break;
case 6:
function_6();
break;
case 7:
function_7();
break;
case 8:
function_8();
break;
case 9:
function_9();
break;
case 10:
function_10();
break;
case 11:
function_11();
break;
case 12:
function_12();
break;
case 13:
function_13();
break;
case 14:
scanf("%d %d", &num1, &num2);
max = function_14(num1, num2);
printf("最大值为:%d",max);
break;
case 15:
scanf("%d %d", &num1, &num2);
function_15(&num1, &num2);
printf("最大值为:%d 最小值为:%d ", num1, num2);
break;
case 16:
function_16();
break;
case 17:
function_17();
break;
case 18:
function_18();
break;
case 19:
function_19();
break;
case 20:
function_20();
break;
case 21:
function_21();
break;
case 22:
function_22();
break;
case 23:
function_23();
break;
case 24:
function_24();
break;
case 25:
return 0;
default:
printf("不存在此结果,请重新输入!!");
}
goto label;
}
void function_1(){
int num1, num2, answer;
scanf("%d %d", &num1, &num2);
answer=num1+num2;
printf("加法结果的十进制形式是:%d\n",answer);
printf("加法结果的八进制形式是:%o\n",answer);
printf("加法结果的十六进制形式是:%x",answer);
}
void function_2(){
int num1, num2, answer;
scanf("%d %d", &num1, &num2);
answer=num1-num2;
printf("减法结果的十进制形式是:%d\n",answer);
printf("减法结果的八进制形式是:%o\n",answer);
printf("减法结果的十六进制形式是:%x",answer);
}
void function_3(){
float num3, num4, answer2;
scanf("%f %f", &num3, &num4);
answer2=num3*num4;
printf("乘法结果的小数形式是:%f\n",answer2);
printf("乘法结果的指数形式是:%e",answer2);
}
void function_4(){
float num3, num4, answer2;
scanf("%f %f", &num3, &num4);
if(num4==0){
printf("除数不能为0!!");
}
else{
answer2=num3/num4;
printf("除法结果的小数形式是:%f\n",answer2);
printf("除法结果的指数形式是:%e",answer2);
}
}
void function_5(){
int answer, value, temp, bits, one_p, two_p, three_p;
scanf("%d", &value);
if(value<0){ //比较输入值是否符合标准
printf("要求输入的数为正整数");
}
if(value>999){
printf("要要求输入的数为3位以内的正整数");
}else{
temp=value; //计算位数(bits)
bits=0;
for(int i=1;i<=3;i++){
answer=temp%10;
if(answer!=0){
bits++;
}
temp/=10;
}
switch(bits){ //计算并显示每一位的值
case 1:
one_p=value%10;
printf("该数为1位数,个位是%d", one_p);
break;
case 2:
one_p=value%10;
value/=10;
two_p=value%10;
printf("该数为2位数,十位是%d,个位是%d", two_p, one_p);
break;
case 3:
one_p=value%10;
value/=10;
two_p=value%10;
value/=10;
three_p=value%10;
printf("该数为3位数,百位是%d, 十位是%d,个位是%d", three_p, two_p, one_p);
break;
}
}
}
void function_6(){
long long int num5, answer3, o;
double R, S;
scanf("%lf", &R);
S=R*R*PI;
printf("该圆面积是:%f\n", S);
printf("该圆面积保留两位小数的结果是:%.2f", S);
}
void function_7(){
int year;
scanf("%d",&year);
if((year%400==0) || (year%4==0&&year%100!=0)){
printf("%d年是闰年", year);
}else{
printf("%d年是平年", year);
}
}
void function_8(){
int score;
scanf("%d", &score);
if(score<=100 && score>=90){
printf("优秀");
}
else if(score<=89 && score>=80){
printf("良");
}
else if(score<=79 && score>=70){
printf("中");
}
else if(score<=69 && score>=60){
printf("及格");
}
else{
printf("不及格");
}
}
void function_9(){
long long int num5, answer3, o;
answer3=0;
scanf("%d", &num5);
for(o=1; o<=num5; o++){
if(o % 2 != 0){
answer3+=o;
}
}
printf("%d", answer3);
}
void function_10(){
long long int num5, answer3, o;
answer3=0;
o=1;
scanf("%d", &num5);
while(o<=num5){
if(o % 2 == 0){
answer3+=o;
}
o++;
}
printf("%lld", answer3);
}
void function_11(){
long long int num5, answer3, o;
answer3=0;
o=1;
scanf("%d", &num5);
do{
if(o % 3== 0){
answer3+=o;
}
o++;
}while(o<=num5);
printf("%lld", answer3);
}
void function_12(){
long long int num5, o;
scanf("%d%d", &o, &num5);
do{
if(o % 3 == 0 && o % 5 == 0){
printf("%lld ", o);
break;
}
o++;
}while(o<=num5);
}
void function_13(){
int o, one_p, two_p, three_p;
for( o=100; o<1000; o++ )
{
three_p = o /
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
C语言 小小计算器 期末作业 源码集合,为广大学子提供真实可用的源码参考 这份源码的要求已经分布在我的动态中,请在我的“主页”中搜索 ——【C语言】 “小小计算器”基本功能实现 或 复制以下链接:http://t.csdn.cn/01wHm 即可找到 由于各学校课程不同,作业具体实现要求可能会有所不同,这份源码的要求已经分布在我的动态中,有需要的同学可以自行取用
资源推荐
资源详情
资源评论
收起资源包目录
小小计算器-源码总和.zip (26个子文件)
实验 (4)
实验4.c 3KB
实验4.exe 149KB
实验 (12)
实验12.exe 166KB
实验12.c 12KB
实验 (9)
实验9.c 9KB
实验9.exe 157KB
实验 (13)
实验13.exe 170KB
实验13.c 16KB
实验 (1)
实验1.c 184B
实验1.exe 145KB
实验 (11)
实验11.exe 165KB
实验11.c 11KB
实验 (10)
实验10.c 10KB
实验10.exe 165KB
实验 (5)
实验5.exe 149KB
实验5.c 3KB
实验 (6)
实验6.exe 150KB
实验6.c 5KB
实验 (3)
实验3.exe 147KB
实验3.c 2KB
实验 (7)
实验7.c 8KB
实验7.exe 154KB
实验 (8)
实验8.c 9KB
实验8.exe 156KB
实验 (2)
实验2.c 778B
实验2.exe 145KB
共 26 条
- 1
资源评论
幻酌
- 粉丝: 60
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功