实验二 C语言分支与循环基础应用编程-1

news/2024/10/10 15:00:37

task1.c 

#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;//生成一个随机数并且除2取余数,余数可能是0或者1 
if(random_major){//如果余数是1 
random_no=rand()%(N2-N1+1)+N1;//生成一个在 N1 和 N2 之间的随机数
printf("20248329%04d\n",random_no);
}
else{random_no=rand()%N3+1;//生成一个在1和 N3 之间的随机数。printf("20248395%04d\n",random_no);
}
cnt++;
}
return 0;}

问题1:解释line21代码 random_no = rand() % (N2 - N1 + 1) + N1;的功能  Q:生成一个在 N1 和 N2 之间的随机数

问题2:解释line25代码 random_no = rand() % N3 + 1;的功能 Q:生成一个在1和 N3 之间的随机数

问题3:这个程序的功能是什么? Q:随机生成计算机7到12和奇安信1班学生的学号

task.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;}

task.3

#include <stdio.h>int main(){while(1){char input;
scanf("%c",&input);
if(input=='r'){
printf("stop!\n");
getchar();    
}
else if(input=='g'){
printf("go go go\n");
getchar();
}
else if(input=='y'){
printf("wait a minute\n");
getchar();
}
else {
printf("something must be wrong...\n");
getchar();
}}    
return 0;    
} 

task.4

#include <stdio.h>
int main(){
double x;
double cost;
double max_cost;
double min_cost;
double final_cost;
max_cost=0;
min_cost=20000;
final_cost=0;
cost=0;
printf("输入今日开销,直至-1结束;\n"); 
while (cost!=-1){
scanf("%lf",&cost);    
getchar();
if (cost>max_cost){max_cost=cost;
}
if (cost>=0){
if (cost<min_cost){min_cost=cost;}
}    
final_cost+=cost;        
}    
printf("今日累计消费总额:%.1f\n",final_cost);
printf("今日最高一笔开销:%.1f\n",max_cost);
printf("今日最低一笔开销:%.1f\n",min_cost);return 0;

task.5

#include <stdio.h>
int main(){
int a,b,c;
int result;
while(1){result=scanf("%d%d%d",&a,&b,&c);if (result != 3) {// 发生错误或者到达文件末尾break;}
getchar();
if ((a+b<=c)||(a+c<=b)||(b+c<=a)){
printf("不能构成三角形\n");
}
else if((a*a+b*b==c*c)||(b*b+c*c==a*a)||(a*a+c*c==b*b)){
printf("直角三角形\n");
}
else if((a==b)&&(a==c)){
printf("等边三角形\n");
}
else if(((a==b)&&(a!=c))||((a==c)&&(b!=a))||((b==c)&&(b!=a))){
printf("等腰三角形\n");
}
else{
printf("普通三角形\n");
} 
}return 0; 
}

task.6

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

 

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

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

相关文章

SIGGRAPH Asia 2024 | 网易伏羲研究成果入选,3D面部动画技术再获新突破

近日,国际计算机图形与交互技术顶会SIGGRAPH Asia 2024公布论文接收结果:网易伏羲最新研究成果《FreeAvatar: Robust 3D Facial Animation Transfer by Learning an Expression Foundation Model》成功入选。今年12月,SIGGRAPH Asia 2024大会将在日本东京举行,届时网易伏羲…

Docker:更改Docker默认IP网段

问题今天部署服务时遇到一个问题:内网网段都是互通的,但是我的这台服务器(16网段)访问不到(17网段)的系统服务,使用宿主机 ping命令 也是失败的,但是其他同网段服务器(16网段)是可以访问到(17网段)服务的,后来经过排查,发现docker启动的默认网段与 17网段 冲突,…

深入解析 DolphinScheduler 任务调度、拆分与执行全流程

Apache DolphinScheduler介绍 Apache DolphinScheduler 是一个分布式易扩展的可视化DAG工作流任务调度开源系统。适用于企业级场景,提供了一个可视化操作任务、工作流和全生命周期数据处理过程的解决方案。 Dag背景知识 摘录了一下Dag的offical定义A graph is formed by verti…

单片机复位详解

单片机复位详解 单片机复位介绍 单片机复位是确保单片机能够稳定、正确地从头开始执行程序的重要机制。复位电路的作用是使单片机的状态处于初始化状态,包括让时钟处于稳定状态、各种寄存器和端口处于初始化状态等。 单片机复位分为高电平复位和低电平复位两种方式。 基本上所…

Camstar 电子套件基础数据导入导出Export/Import

前提准备:你的共享目录CamstarUploads弄好了,参考https://www.cnblogs.com/CarryYou-lky/p/16133849.html 😘宝子:除非不再醒来,除非太阳不再升起,不然都请你好好生活,挣扎着前进,开心的笑。(●◡●)

LearnFast.ai:用AI高效解决数学和物理难题的体验分享

最近,我在使用一款名叫 LearnFast.ai 的工具,帮助我快速解决数学和物理问题。作为一个基于 GPT-4o API 的解题工具,它的实时响应和多格式支持让我在学习中事半功倍。无论是高中生、大学生还是自学者,这款工具都可以成为解决复杂问题的好帮手。摘要:最近,我在使用一款名叫…

2024-9-28

新闻周刊2024.9.28 导入:建立"定点医药机构相干人员"实行驾照式经分 传统监管机构将从医药机构进一步精确到人的进步,让少部分违规人员收到更加严厉的处罚防止医保滥用,让违规者付出应有代价,确保医保资金真正惠民,让所有人都共同收益. 视点:秋收"惠农"时农…

实验作业2

任务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(…