欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 6.7-6.10作业

6.7-6.10作业

2024/10/24 21:31:01 来源:https://blog.csdn.net/2201_75783063/article/details/139562219  浏览:    关键词:6.7-6.10作业

1. 

/*1.使用switch实现银行系统,默认用户为A,密码为1234,余额2000
如果登录失败,则直接结束
如果登录成功,则显示银行页面
1.查询余额
2.取钱
3.存钱
如果是1,则打印余额
如果是2,则输入取钱金额,如果金额大于存款则输出余额不足,否则输出剩余金钱
如果是3,则输入存款金额,输出存款后的金*/
int main(int argc, const char *argv[])
{char user=0;int passwd=0;float balance=2000;float qu_money=0;                                                         float cun_money=0;printf("请输入用户及密码:");scanf("%*c%c %d",&user,&passwd);if('A'==user && 1234==passwd){printf("1.查询余额\n");printf("2.取钱\n");printf("3.存钱\n");int num=0;printf("请选择服务:");scanf("%d",&num);switch(num){case 1:printf("余额:%.3f\n",balance);break;case 2:printf("输入取钱金额:\n");\scanf("%f",&qu_money);\if(qu_money>balance)printf("余额不足\n");elseprintf("%.3f\n",balance-qu_money);\break;case 3:printf("输入存款金额:\n");\scanf("%f",&cun_money);\printf("%.3f\n",balance+cun_money);\break;}}else{printf("登录失败\n");exit(0);}return 0;
}

2. 输入一个日期,输出这是这一年的第几天?

#include <stdio.h>int main() {int year=0, month=0, day=0;int dayNumber=0;printf("请输入日期(格式:年/月/日): ");scanf("%d/%d/%d", &year, &month, &day);// 根据月份计算天数switch (month) {case 12: dayNumber = 30; // 十一月case 11: dayNumber += 31; // 十月case 10: dayNumber += 30; // 九月case 9:  dayNumber += 31; // 八月case 8:  dayNumber += 31; // 七月case 7:  dayNumber += 30; // 六月case 6:  dayNumber += 31; // 五月case 5:  dayNumber += 30; // 四月case 4:  dayNumber += 31; // 三月case 3:  // 二月if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {dayNumber += 29; // 闰年} else {dayNumber += 28; // 非闰年}case 2:  dayNumber += 31; // 一月default: break;}// 加上当月天数dayNumber += day;printf("这是这一年的第 %d 天。\n", dayNumber);return 0;
}

3、输入一个表达式,实现计算器+-*/%

例如:1+2,则输出3

5/2, 则输出2.5

  1 #include <stdio.h>2 #include <stdlib.h>3 /*输入一个表达式,实现计算器+- * /%4 5 例如:1+2,则输出36 7 5/2, 则输出2.5*/8 int main() {9     char operation;10     double num1, num2;11 12     printf("请输入一个表达式(例如 1+2): ");13     scanf("%lf %c %lf", &num1, &operation, &num2);14 15     switch(operation) {16         case '+':17             printf("结果: %.2lf\n", num1 + num2);18             break;19         case '-':20             printf("结果: %.2lf\n", num1 - num2);21             break;22         case '*':23             printf("结果: %.2lf\n", num1 * num2);24             break;25         case '/':26             if(num2 != 0.0) {  // 检查分母是否为零27                 printf("结果: %.2lf\n", num1 / num2);28             } else {29                 printf("除数不能为0。\n");30             }31             break;32         case '%':33             if((int)num2 != 0) {  // 检查模数是否为零34                 printf("结果: %.0d\n", (int)num1 % (int)num2);35             } else {36                 printf("模数不能为0。\n");37             }38             break;39         default:40             printf("无效的操作符。\n");41     }42                                                                 43     return 0;44 }
~                                                                   
~                                                                   
~                                                                   

4. 下面代码执行后,a\b\c的结果是?

int a=5,b=7,c

c=a+++b

这段代码在C语言中会产生未定义行为,因为表达式a++ + b没有明确的顺序点

5.

代码如下

void main()

{

int c=9,d=0;

c=c++%5;

d=c;

printf("d=%d\n",d);

}

d=4

6. 

.给定一个整数,判断它是否被3、5、7整除,并输出一下信息 (笔试)

1.能同时被3,5,7整除(直接输出3 5 7,每个数字之间一个空格)

2.只能内其中两个整数整除(输出两个数,小的在前,大的在后,例如3 5 或者 3 7 或者5 7,中间使用空格隔开)

3. 只能被其中一个整数整除(输出这个除数)

4.不能被任何数整除,输出小写字母n

案例如下:

输入:105

输出:3 5 7

1 #include <stdio.h>
2 
3 /*.给定一个整数,判断它是否被3、5、7整除,并输出一下信息 (笔试)
4 1.能同时被3,5,7整除(直接输出3 5 7,每个数字之间一个空格)
5 2.只能内其中两个整数整除(输出两个数,小的在前,大的在后,例如3 5 或者 3 7 或者5 7,中间使用空格隔开)
6 3. 只能被其中一个整数整除(输出这个除数)
7 4.不能被任何数整除,输出小写字母n
8 案例如下:
9 输入:105
0 输出:3 5 7*/
1 
2 int main() {
3     int num;
4     scanf("%d", &num);
5 
6     int count = 0;
7     if (num % 3 == 0) {
8         printf("3 ");                                                                                          
9         count++;
0     }
1     if (num % 5 == 0) {
2         printf("5 ");
3         count++;
4     }
5     if (num % 7 == 0) {
6         printf("7 ");
7         count++;
8     }
9 
0 
1     return 0;
2 }

7.  

 b=10,c=12,d=120

8.

c=-75        a=181

d=5;

e=(++d)++;
增量操作数需要左值

9.设有以下语句:int a=3,b=6,c;c=a^b<<2;则c的二进制值是______。

a = 0b011 // 3的二进制表示
b = 0b110 // 6的二进制表示a ^ b = 0b101 // 异或结果
(a ^ b) << 2 = 0b10100 // 将异或结果左移2位

c=0b10100

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com