首页 > 其他分享 >实验2

实验2

时间:2024-10-11 14:00:35浏览次数:8  
标签:%. int random luckyday 实验 printf include

实验2

实验任务1:

源代码:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 5
#define N1 397
#define N2 476
#define N3 21
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() % (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;
}

结果:

 

 回答:

line21:随机生成一个397~476之间的数

line25:随机生成一个1~21之间的数

功能:随机生成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 w;
    while(scanf("%c",&w)!=EOF){
        if(w=='r'){
            getchar();
            printf("stop!\n");
        }
        else if(w=='g'){
            getchar();
            printf("go go go\n");
        }
        else if(w=='y'){
            getchar();
            printf("wait a minute\n");
        }
        else{
            getchar();
            printf("something must be wrong...\n");
        }
    }
    return 0;
}

结果:

 实验任务4:

源代码:

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     double expense, maxexpense = 0, minexpense = 20000, totalexpense = 0;
 6     printf("输入今日开销,直到输入-1终止:\n");
 7     while (1) {
 8         scanf("%lf", &expense);
 9         if (expense == -1) {
10             break;
11         }
12         if (expense > maxexpense) {
13             maxexpense = expense;
14         }
15         if (expense < minexpense) {
16             minexpense = expense;
17         }
18         totalexpense += expense;
19     }
20     printf("最高一笔开销:%.1lf元\n", maxexpense);
21     printf("最低一笔开销:%.1lf元\n", minexpense);
22     printf("一天总开销:%.1lf元\n", totalexpense);
23     return 0;
24 }

结果:

 实验任务5:

源代码:

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int a, b, c;
 6     while (scanf("%d %d %d", &a, &b, &c) != EOF) {
 7         if ((a + b <= c) || (a + c <= b) || (b + c <= a)) {
 8             printf("不能构成三角形\n");
 9         }
10         else {
11             if ((a == b) && (b == c)){
12                 printf("等边三角形\n");
13             }
14             else if ((a == b) || (a == c) || (b == c)) {
15                 printf("等腰三角形\n");
16             }
17             else if ((a * a + b * b == c * c) || (a * a + c * c == b * b) || (b * b + c * c == a * a)) {
18                 printf("直角三角形\n");
19             }
20             else {
21                 printf("普通三角形\n");
22             }
23         }
24     }
25     return 0;
26 }

结果:

 实验任务6:

源代码:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <time.h>
 4 
 5 int main()
 6 {
 7     int luckyday, guess, attempts = 3;
 8     srand(time(NULL));
 9     luckyday = rand() % 30 + 1;
10     printf("猜猜2024年11月哪一天会是你的luckyday\n");
11     printf("开始喽,你有三次机会,猜吧(1~30):");
12     while (attempts > 0) {
13         scanf("%d", &guess);
14         if (guess == luckyday) {
15             printf("哇,猜中了:)\n");
16             return 0;
17         }
18         else if (guess < luckyday) {
19             printf("你猜的日期早了,你的luckyday还没到呢\n");
20             printf("再猜(1~30):");
21         }
22         else {
23             printf("你猜的日期晚了,你的luckyday在前面哦\n");
24             printf("再猜(1~30):");
25         }
26         attempts--;
27     }
28          printf("次数用完啦。偷偷告诉你,11月你的luckyday是%d\n", luckyday);
29 return 0;
30 }

结果:

 

 

标签:%.,int,random,luckyday,实验,printf,include
From: https://www.cnblogs.com/wcy-0464/p/18458209

相关文章

  • 20222415 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    1.实验内容本周学习了缓冲区溢出的相关知识,介绍了缓冲区和缓冲区溢出,并介绍了几种缓冲区溢出的实现方式。2.实验过程1.直接修改程序机器指令,改变程序执行流程1.1将目标文件pwn20222415通过共享文件夹放到kali里,运行pwn20222415.1.2输入objdump-dpwn1|more对pwn20222415......
  • 20222319zzs 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    1.实验内容1.1知识回顾1.1.1什么是缓冲区溢出?计算机中,如果程序试图向一个缓冲区填充超出它能够容纳的数据,溢出的数据可能会覆盖其他重要的内存区域,导致程序运行失败甚至崩溃,如果这些溢出数据是精心设计的.则攻击者就可以利用它们指向预先设计的攻击代码(shellcode)(Shellcode是核......
  • 实验1 现代C++编程初体验
    实验任务1代码1//现代C++标准库、算法库体验2//本例用到以下内容:3//1.字符串string,动态数组容器类vector、迭代器4//2.算法库:反转元素次序、旋转元素5//3.函数模板、const引用作为形参67#include<iostream>8#include<string>9......
  • 实验1 现代C++编程初体验
    任务1代码:1//现代C++标准库、算法库体验2//本例用到以下内容:3//1.字符串string,动态数组容器类vector、迭代器4//2.算法库:反转元素次序、旋转元素5//3.函数模板、const引用作为形参67#include<iostream>8#include<string>9#inc......
  • 实验1 现代C++编程初体验
    实验任务11//现代C++标准库、算法库体验2//本例用到以下内容:3//1.字符串string,动态数组容器类vector、迭代器4//2.算法库:反转元素次序、旋转元素5//3.函数模板、const引用作为形参67#include<iostream>8#include<string>9#inc......
  • 边缘检测评估方法:FOM、RMSE、PSNR和SSIM对比实验和理论研究
    图像分割与边缘检测是密切相关的计算机视觉任务。以下图1展示了一个海岸线分割模型的输出示例:图1:分割掩码到边缘图的转换过程(数据集:LICS)模型将每个像素分类为陆地或海洋(分割掩码)。随后,海岸线被定义为分类发生变化的像素位置(边缘图)。边缘检测可以通过提取图像分割模......
  • 六个大学生AI写作神器:一键生成实验报告/思想汇报/辩论灵感/课程论文/心得感悟等内容
    面对接踵而至的繁重课程与五花八门的作业任务,笔者为广大学生朋友精心搜罗了6款好用的AI助手。这些工具专为提升学习效率、激发创意灵感、加强学习专注力而设计,旨在帮助每位学子轻松应对作业挑战,显著优化学术成果。让它们成为学习路上的得力伙伴,让学习之旅更加顺畅无阻,课余生活......
  • 20222322 2024-2025-1 《网络与系统攻防技术》实验一实验报告
    1.实验内容1.1本周学习内容本周学习主要围绕缓冲区溢出漏洞(攻击)展开1.2实验内容简述“pwn1”是一个Linux可执行文件正常运行时会调用“foo”函数。“foo”函数的功能是对用户输入的字符串进行简单回显。此程序中还包含另一个代码片段“getShell”,具有返回一个可用Shell的......
  • 程序设计基础I-实验6 二维数组
    7-1sdut-C语言实验-求一个3*3矩阵对角线元素之和给定一个3*3的矩阵,请你求出对角线元素之和。输入格式:按照行优先顺序输入一个3*3矩阵,每个矩阵元素均为整数。输出格式:从左下角到右上角这条对角线上的元素之和。输入样例:123345601输出样例:在这里给出相应......
  • 程序设计基础I-实验7 函数(函数题)
    6-1sdut-C语言实验-计算组合数计算组合数。C(n,m),表示从n个数中选择m个的组合数。计算公式如下:若:m=0,C(n,m)=1否则,若n=1,C(n,m)=1否则,若m=n,C(n,m)=1否则C(n,m)=C(n-1,m-1)+C(n-1,m).函数接口定义:在这里描述函数接口。例如:intfun(intn,intm);其中n和m都......