C++实验二

实验一

#include <stdio.h>
 #include <stdlib.h>
 #include <time.h>
 #define N 5
 int main() {
    int number;
    int i;
    srand(time(0));     // 以当前系统时间作为随机种子
    for(i = 0; i < N; ++i) {
        number = rand() % 100 + 1;
        printf("20490042%04d\n", number);
    }
    return 0;
 }

lin13生成一个1到100之间的随机数

lin14作用是十进制整数形式输出number且长度为4,长度不足4就在前面补0

这个程序是用来抽取学生编号的

实验二

 #include <stdio.h>
 https://en.cppreference.com/w/cpp/numeric/random/srand
 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;
        }
        switch (choice) {
            case 1:
            case 2:
                total_price += 3 * quantity;
                break;
            case 3:
                total_price += 5 * quantity;
                break;
            case 4:
                total_price += 2 * quantity;
                break;
        }
        printf("请投入金额: ");
        scanf("%f", &amount_paid);
        change = amount_paid - total_price;
        printf("本次购买总价: %.2f 元\n", total_price);
        printf("找零: %.2f 元\n", change);
        total_price = 0;
    }
    printf("感谢您的购买,欢迎下次光临!\n");
    return 0;
 }

重置总价格为0

break直接结束循环结构,continue跳过continue下面的语句

不需要,程序里面有

if (choice < 1 || choice > 4)

实验三

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

 实验四

#include<stdio.h>
double max(double x,double y)
{
    return(x>=y)?x:y;
}
double min(double x,double y)
{
    return(x<=y)?x:y;
}
int main()
{
    double m,sum,l,s;
    l=0;
    s=20000;
    sum=0;
    while(1){
    
    scanf("%lf",&m);
    if (m==-1)
    break;
    else
    {
    l=max(l,m);
    s=min(s,m);
    sum=sum+m;}}
    printf("今日消费总额:%0.1lf \n",sum);
    printf("今日最高一笔开销:%0.1lf \n",l);
    printf("今日最低一笔开销:%0.1lf \n",s);
    return 0;
}

 实验五

#include<stdio.h>
#include<stdlib.h>
int main()
{
    int luckyday,i,guess;
    printf("猜猜2025年4月哪一天是你的lucky day \n");
    printf("开始咯,你有三次机会,,猜吧(0-30):");
    luckyday=rand()%30+1;
    i-0;
        while(i<3)
    {
    scanf("%i",&guess);

        if(guess==luckyday)
        {
        printf("哇,猜中了:-)");
        break;}
        else if(guess>luckyday)
        printf("你猜的日期晚了,你的lucky day在前面哦 \n");
        else
        printf("你猜的日期早了,你的lucky day 还没到呢 \n");
        printf("再猜:");
        i=i+1 ;
    }
    return 0;
}

 实验六

#include<stdio.h>
int main()
{
    int i,n,u,m,t;
    i=0;
    t=0;
    scanf("%i",&n);
    for(i;i<n;i+=2)
    {u=i;
    
    for(m=0;m<t;m+=1)
    {
        printf("   \t");}
        for(u;u<n;u+=1)
    {
        printf(" O \t");
    }
    u=i;
    printf("\n");
    
        for(m=0;m<t;m+=1)
    {
        printf("   \t");}
        for(u;u<n;u+=1)
    {
        printf("<H>\t");
    }
    
    printf("\n");
    u=i;
        for(m=0;m<t;m+=1)
    {
        printf("   \t");}
        for(u;u<n;u+=1)
    {
        printf("I I\t");
    }
    printf("\n");
    t=t+1;
    }
    

    }

 

posted @ 2025-03-23 20:33  MA2C  阅读(16)  评论(0)    收藏  举报