当前位置: 首页 > news >正文

实验任务2 - pp

task-1

源代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 5
#define N1 80
#define N2 35
int 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() % N1 + 1;
printf("20256343%04d\n", random_no);}
else {
random_no = rand() % N2 + 1;
printf("20256136%04d\n", random_no);
}
cnt++;
}
system("pause");
return 0;
}

运行结果截图

捕获

捕获2

删去代码后运行结果截图

1.3

1.4

问题1

产生新的随机数

问题2

随机抽取5个学号

task-2

 源代码

#include <stdio.h>
#include<stdlib.h>
int main() {
int choice, quantity;
float total_price = 0, amount_paid, change;
while (1) {
printf("\n自动饮料售卖机菜单:\n");printf("1. 可乐 - 3 元/瓶\n");
printf("2. 雪碧 - 3 元/瓶\n");
printf("3. 橙汁 - 5 元/瓶\n");
printf("4. 矿泉水 - 2 元/瓶\n");
printf("0. 退出购买流程\n");
printf("请输入饮料编号: ");
scanf("%d", &choice);
if (choice == 0)
break;
if (choice < 1 || choice > 4)
{printf("无效的饮料编号,请重新输入。\n");
continue;
}
printf("请输入购买的数量: ");
scanf("%d", &quantity);
if (quantity < 0) {
printf("购买数量不能为负数,请重新输入。\n");
continue;
}
if(choice == 1 || choice == 2)
total_price += 3 * quantity;
else if(choice == 3)
total_price += 5 * quantity;
else
total_price += 2 * quantity;
printf("请投入金额: ");
scanf("%f", &amount_paid);
change = amount_paid - total_price;
printf("本次购买总价: %.2f 元\n", total_price);printf("找零:%.2f 元\n",change);
total_price = 0;
}printf("感谢您的购买,欢迎下次光临!\n");system("pause");
return 0;
}

运行结果截图

2.1

 

删去line47代码后运行结果截图

22

问题1

输出结果中“本次购买总价”会累加

问题2

结束本次循环,进入下一次循环

task-3

 源代码

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

 

运行结果截图

屏幕截图 2025-10-14 094235

task-4

源代码

#include <stdio.h>
#include<stdlib.h>
int main()
{double a=1,sum=0,b=0,c=20001;printf("输入今日开销,直到输入-1终止:\n");while (a != -1){scanf("%lf", &a);if (a > 0 && a <= 20000){sum += a;if (a > b){b = a;}if (a < c){c = a;}}}printf("今日累计消费总额:%.1f\n", sum);printf("今日最高一笔开销:%.1f\n", b);printf("今日最低一笔开销:%.1f\n", c);return 0;
} 

运行结果截图

屏幕截图 2025-10-14 102607

 task-5

源代码

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

运行结果截图

屏幕截图 2025-10-14 104655

task-6

源代码

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

运行结果截图

屏幕截图 2025-10-14 112701

屏幕截图 2025-10-14 113142

实验总结

1.习惯使用换行符
2.
要求支持多组输入,直到用户按下CTRL+Z,回车,终止程序时,用
while (scanf("%c", &a)!=EOF)
       {
        }
3.要关注数据范围
找一组数的最小值时,令表示其的变量初始值大于改组数的最大值
4.
已知循环次数最好用for
5.
生成随机数  

# &nbsp;        #include<time.h>

# &nbsp;        确定类型

# &nbsp;        srand(time(NULL));

# &nbsp;        确定随机数范围random = rand() % 30 + 1;(指1~30)

# &nbsp;                random = rand() % 30(指0~29)
http://www.hskmm.com/?act=detail&tid=30808

相关文章:

  • 插入公式总是有个框框
  • picard标记DI/DS标签
  • 2025年成都全日制辅导机构优选指南,全日制培训班/集训机构/集训班/全日制一对一培训/文化课集训机构,学习提升新选择
  • 2025 年灭老鼠公司最新推荐排行榜:欧盟认证技术与环保服务双优品牌权威甄选,含成都 / 四川专业机构口碑指南除老鼠/消灭老鼠/老鼠消杀公司推荐
  • uni-app x初探
  • 深度SEO优化的方式有哪些,从技术层面来说
  • 2025 年南昌装修公司推荐南昌市宿然装饰工程有限公司,以专业与真诚雕琢理想空间南昌装修设计推荐指南!
  • C# Avalonia 16- Animation- AnimateRadialGradient
  • ControlNet——AI图像生成的“精准操控工具”
  • 2025 年国内模切加工源头厂家最新推荐排行榜:聚焦 0.1mm 精度与高产能标杆,为下游企业精选优质合作商电子辅料/硅胶/薄膜/胶黏/绝缘模切加工厂家推荐
  • 2025 武汉实缴服务机构最新推荐排行榜:知识产权 / 注册资本代办优选清单,深度解析专业服务品质
  • 华为开发者空间携手乐知行:轻松实现智能网联小车数据可视化系
  • card滑动效果
  • 学习日报
  • 2025年成都一对一培训机构优选榜:成都一对一辅导/补习/培训/补习班/辅导机构推荐,成都美博教育脱颖而出
  • 打印机共享修复,打印机无法共享,打印机修复工具下载及安装教程
  • web中静态资源加载失败的降级处理
  • 2025年保温隔热挤塑泡沫板推荐哪个厂家好?xps挤塑板/石墨聚苯板公司推荐
  • 实用指南:消息队列 MQ
  • 基于 Docker 部署 Alpine Linux:从入门到实践
  • 行列式按一行或列展开
  • 2025 年最新推荐高性价比实木家具厂家排行榜:涵盖实木床餐边柜/餐桌斗柜/书柜/梳妆台/床头柜/餐椅沙发/休闲椅优质厂家精选
  • 多智能体微服务实战(3/4):Aspire 打造本地 K8s 开发环境
  • 2025 年水下打捞公司服务推荐榜:水下打捞手机/水下打捞黄金/水下打捞戒指/水下打捞沉船/水下打捞转头,聚焦专业与高效,助力解决各类水下应急需求
  • SAP 中物料视图必填字段(用下程序定期校验)
  • 一文读懂Optimism,Arbitrum,ZK Rollups 共识算法
  • 【光照】UnityURP渲染中的HDR
  • 在jupyter notebook中使用自己创建的conda虚拟环境的Python内核
  • Flutter顶部状态栏显示,安全区设置等,防止各种异性屏挡住应用操作栏
  • LGP11189 [KDOI R10] 水杯降温 学习笔记