实验二

task1

代码部分

#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;
}

image

task2

代码部分

#include <stdio.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_s("%d", &choice);
		if (choice == 0)
			break;
		if (choice < 1 || choice > 4) {
			printf("无效的饮料编号,请重新输入。\n");
			continue;
		}
		printf("请输入购买的数量: ");
		scanf_s("%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_s("%f", &amount_paid);
		change = amount_paid - total_price;
		printf("本次购买总价: %.2f 元\n", total_price);
		printf("找零: %.2f 元\n", change);
		total_price = 0;
	}
	printf("感谢您的购买,欢迎下次光临!\n");
	return 0;
}

image

task3

代码部分


#include<stdio.h>
int main() {
	printf("请输入字符x来代表红绿灯(停止输入请输入s):");
	char x;
	x = getchar();
	getchar();
	while (x != 's') {
		if (x == 'r') {
			printf("no no no\n");
		}
		else if (x == 'y') {
			printf("wait\n");
		}
		else if (x == 'g') {
			printf("gogogo\n");

		}
		else {
			printf("wrong grammar\n");
		}
		x = getchar();
		getchar();
	}
	return 0;

}

image

task4

代码部分

#include<stdio.h>
int main() {
	printf("请输入今日开销:\n");
	double x,sum=0,max=0,min=20000;
	scanf_s("%lf",&x);
	while (x != -1) {
		sum = sum + x;
		if (x > max) {
			max = x;
		}
		if (x > 0 && x < min) {
			min = x;
		
		}
		 
		scanf_s("%lf", &x);
	}
	printf("今日累计消费:%f\n",sum);
	printf("今日最高一笔开销:%f\n",max);
	printf("今日最低一笔开销:%f\n", min);
	return 0;
}

image

task5

代码部分

#include<stdio.h>
#include<stdlib.h>
int main() {
	printf("猜猜哪一天是你的lucky day\n");
	
	int max=30,min=1,x,i=1;
	int random_num = rand() % (max - min + 1) + min;
	
	
	while (i <= 3) {
		printf("请输入你的答案(一共三次)(1-30):\n");
		scanf_s("%d", &x);
		if (x == random_num) {
			printf("yes,you are right\n");
			return 0;

		}
		else {
			printf("no, please try again\n");
		
		}
		i = i + 1;
		
	}
	printf("三次机会用完啦,偷偷告诉你,你的lucky day是%d ",random_num);
	return 0;



}

image

task6

代码部分

#include <stdio.h>
#include <stdlib.h>
int main() {
	    int line, a, i, j, k, s;
	    printf("input:");
	    scanf_s("%d", &a);
	    for (line = 1; line <= a; ++line) {

		    for (i = 0; i < (line - 1); ++i)
				printf(" \t");
		    for (j = 0; j < (a - line) * 2 + 1; ++j)
				printf(" O\t");
		    printf("\n");
		    for (i = 0; i < (line - 1); ++i)

				printf(" \t");
		    for (k = 0; k < (a - line) * 2 + 1; ++k)
			    printf("<H>\t");
		    printf("\n");
		    for (i = 0; i < (line - 1); ++i)
				printf(" \t");
		    for (s = 0; s < (a - line) * 2 + 1; ++s)
				printf("I I\t");
		    printf("\n");
		
	}
	
		     
	    return 0;

}

image

posted @ 2025-03-23 16:55  毛志威  阅读(25)  评论(0)    收藏  举报