实验作业2

news/2024/10/10 14:23:00

任务1

源代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>#define N 5
#define N1 397
#define N2 476
#define N3 21int main() {int cnt;int random_major, random_no;srand(time(NULL));      // 以当前系统时间作为随机种子
cnt = 0;while(cnt < N) {random_major = rand() % 2;if(random_major) {random_no = rand() % (N2 - N1 + 1) + N1;printf("20248329%04d\n", random_no);}else {random_no = rand() % N3 + 1;printf("20248395%04d\n", random_no);}cnt++;}return 0;
}

运行效果

问题回答

1 生成2024832904xx的数字,xx的范围为1-79

2生成2024832900xx的数字,xx的氛围为1-21

3随机抽取5个人的学号

任务2

源代码

#include <stdio.h>
#include <math.h>int main() {double a, b, c;double delta, p1, p2; while(scanf("%lf%lf%lf", &a, &b, &c) != EOF) {if(a == 0) {printf("a = 0, invalid input\n");continue;}delta = b*b - 4*a*c;p1 = -b/2/a;p2 = sqrt(fabs(delta))/2/a;if(delta == 0)printf("x1 = x2 = %.2g\n", p1);else if(delta > 0)printf("x1 = %.2g, x2 = %.2g\n", p1+p2, p1-p2);else {printf("x1 = %.2g + %.2gi, ", p1, p2);printf("x2 = %.2g - %.2gi\n", p1, p2);}}return 0;
}

运行效果

任务3

源代码

#include<stdio.h>
int main()
{char ans1;while((ans1=getchar())!=EOF){if(ans1==121)printf("%s\n","wait a minute");else if(ans1==103)printf("%s\n","go go go");else if (ans1==114)  printf("%s\n","stop!");elseprintf("%s\n","something must be wrong...");getchar();}return 0;
}

运行效果

任务4

源代码

#include<stdio.h>
int main(){double x,min,total,max=0;printf("输入今日开销,直到输入-1终止\n"); scanf("%lf",&x);max=x; min=x;while(x>=0){ total=total+x;if(x>max) max=x;if(x<min) min=x;scanf("%lf",&x);}printf("今日累计消费总额:%.1f\n",total);printf("今日最大一笔开销:%.1f\n",max);printf("今日最低一笔开销:%.1f\n",min);return 0;
}

运行效果

任务5

源代码

#include<stdio.h>
int main()
{int a,b,c;while(scanf("%d%d%d",&a,&b,&c)!=EOF)if(a<0||b<0||c<0||a+b<=c||a+c<=b||b+c<=a)printf("不能构成三角形");else if(a==b&&b==c)printf("等边三角形");else if(a==b||a==c||b==c)printf("等腰三角形");else if(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)printf("直角三角形");else printf("普通三角形");return 0; 
}

运行效果

任务6

源代码

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){int num,x,y;y=0;srand(time(NULL));num=rand()%30+1;printf("猜猜2024年11月哪一天会是你的lucky day\n\n");printf("开始喽,你有三次机会,猜吧(1~30):");do{ ++y;scanf("%d",&x);if(x<num){printf("\n你猜的日期早了,你的lucky day还没到呢\n\n");if (y<3)printf("再猜(1~30):") ;}else if(x>num){printf("\n你猜的日期晚了,你的lucky day在前面哦\n\n");if(y<3)printf("再猜(1~30):") ;}else{printf("哇,猜中了:)");break;}} while (y<3); printf("次数用光了,偷偷告诉你,11月你的lucky day是%d号",num);return 0;
}

运行效果

实验总结

个人对getchar函数使用方法不熟悉,getchar函数通常是先定义一个ans,用它作为存储键盘输入。回车也算getchar,如想多组输入,要在循环里加上getchar(),rand函数前必须加上种子,否则数值会一成不变,一般加srand(time(NULL))。想要输出某个范围的数值,用rand()%xx,后面不加1,,范围就是0-xx,加1就是1-xx。scanf函数数据类型输入应与先前定义的一致,否则会出错。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/69796.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

# Cocos 2 使用 webview 嵌入页面,摄像头调用没权限问题

Cocos 2 使用 webview 嵌入页面,摄像头调用没权限问题嗯,这么说呢,这篇博文看自己的实际需求哈,标题写的可能不是很准确。 我这边呢,是遇到这样一个功能,就是有一个服务,他是的页面呢,是打开电脑的摄像头,需要在cocos 程序里面呢,展示摄像头的实时画面。看上去挺简单…

Leetcode 864. 获取所有钥匙的最短路径

1.题目基本信息 1.1.题目描述 给定一个二维网格 grid ,其中:‘.’ 代表一个空房间 ‘#’ 代表一堵墙 ‘@’ 是起点 小写字母代表钥匙 大写字母代表锁我们从起点开始出发,一次移动是指向四个基本方向之一行走一个单位空间。我们不能在网格外面行走,也无法穿过一堵墙。如果途…

Hello-Java-Sec 项目 (代码审计)

一、项目背景: Hello-Java-Sec项目为 Github中 一个面向安全开发的 Java漏洞代码审计靶场。 靶场地址:https://github.com/j3ers3/Hello-Java-Sec 本地使用idea部署即可二、代码审计: 通过阅读代码可知,代码采用 @RequestMapping 注解的方式来处理 HTTP不同方法的请求,故…

记录一次本地安装AI ollama大模型数据对话 的经历

浏览器打开 Ollama官网 下载对应的版本,我这里下载的 是对应 windows的版本,下载后直接运行安装安装完成后 打开 dos控制台,win+r,cmd那个,输入ollama 如果显示如下截图内容,就说明安装成功了,接下来就是下载 具体的 大数据库了 安装大模型前,建议先修改环境变量,因…

APP应用分发多个步骤和策略过程,如何进行app应用分发?

进行APP应用分发是一个涉及多个步骤和策略的过程,以下是对该过程的详细解析: 一、前期准备应用程序准备:开发人员需要确保应用程序已经经过完整的测试和质量保证,包括功能测试、用户体验测试、性能测试等,以确保其稳定性和可靠性。 打包应用程序,将开发完成的APP进行编译…

利用 ACME 实现SSL证书自动化配置更新

SSL 证书自动化最近收到腾讯云的通知SSL证书要到期了,本想直接申请的发现现在申请的免费SSL证书有效期只有90天了,顺便了解了一下原因是包括Google在内的国际顶级科技公司一直都有在推进免费证书90天有效期的建议,免费证书加密等级低,难以应对今天日益复杂的网络环境,90天…

arm imx6ull docker启动失败问题查找与解决 内核配置相关

arm imx6ull docker启动失败问题查找与解决 内核配置相关1、增加POSIX Message qeue:could not get initial namespace: no such file or directory CONFIG_POSIX_MQUEUE=y 2、增加namespace failed to set to initial namespace CONFIG_NAMESPACES=y 3、创建网络失败,veth配…

ubuntu的镜像源+bionic版本

首先第一步 查找和你自己ubuntu版本匹配的版本号 匹配代号如下在终端输入lsb_release -a查看自己系统上的版本号可以看到我这个版本号的代号是bionic。 每个版本的镜像文件都是有规律的。 bionic版本的源如下:点击查看代码 # 阿里源 deb http://mirrors.aliyun.com/ubuntu/ bi…