又又一个没有意义的标题

1.在屏幕上输出图案:

#include<stdio.h>
#include<stdlib.h>
int main() {
	int count = 2;
	int temp = 12;
	//i用来控制1-7行,n用来控制每行输出*的个数
	//第一行 1个,第二行 3个,第三行 5个 每行比上一行多两个
	for (int i = 1; i < 8; ++i) {
	//count+1是为了在count位的时候输出换行
		for (int n = 1; n < count+1; ++n) {
    //count记录每行输出多少个,当n==count时,开始下一行输出
			if (n == count) {
				printf("\n");
	//count是上一行的个数,count+2为下一行的个数
				count = count + 2;
				break;
			}
	//注意printf不能放在if语句之上,否则每行输出的多一个
			printf("*");
		}
	}
   for (int i = 1; i < 7; ++i) {
		for (int n = 1; n < temp +1; ++n) {
			if (n == temp) {
				printf("\n");
				temp = temp - 2;
				break;
			}
			printf("*");
		}
	}
    system("pause");
	return 0;
}

运行结果:
在这里插入图片描述
**2.求出0~999之间的所有“水仙花数”并输出。
“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=1+5+3?,则153是一个“水仙花数”。

/*
在数论中,水仙花数(Narcissistic number)也称为自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),是指一N位数,其各个数之N次方和等于该数。
例如153、370、371及407就是三位数的水仙花数,其各个数之立方和等于该数:
153 = 1^3 + 5^3 + 3^3。
370 = 3^3 + 7^3 + 0^3。
371 = 3^3 + 7^3 + 1^3。
407 = 4^3 + 0^3 + 7^3。
*/
**

#include<stdio.h>
#include<stdlib.h>
#include<Math.h>
int main() {
	int hun, dec, sin, d;
	for (int i = 100; i < 1000; ++i) {
		hun = i / 100;
		dec = (i % 100) / 10;
		sin = i % 10;
		d = pow(hun, 3) + pow(dec, 3) + pow(sin, 3);
		if (i == d) {
			printf("%d=%d^3+%d^3+%d^3\n", i, hun, dec, sin);
		}
	}
    system("pause");
	return 0;
}

运行结果:
在这里插入图片描述
**3. 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,
例如:2+22+222+2222+22222
**

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main() {
	int a[5];
	int b;
	int Sn;
	printf("请随机输入一个1-9的数字:\n");
	//scanf之内不能写\n,b=,scanf("b=%d\n",&b),是错误的写法
	scanf("%d", &b);
	Sn=a[0] = b;
	for (int i = 1; i < 5; ++i) {
		a[i] = a[i - 1] *10 + b;
		Sn = Sn + a[i];
	}
	printf("Sn=%d=%d+%d+%d+%d+%d\n", Sn, a[0], a[1], a[2], a[3], a[4]);
	system("pause");
	return 0;
}

在这里插入图片描述
4.猜数字游戏

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu() {
	printf("***********************\n");
	printf("*********1.play********\n");
	printf("*********0.exit********\n");
	printf("***********************\n");
}
void game() {
	//rand()生成一个随机整数 
	//rand()%100+1   1-100的数字
	//rand()%100     0-99的数字
	int random_num = rand() % 100 + 1;
	int input = 0;
	while (1) {
		printf("请输入猜的数字:\n");
		scanf("%d", &input);
		if (input > random_num) {
			printf("猜大了\n");
		}
		else if (input < random_num) {
			printf("猜小了\n");
		}
		else {
			printf("猜对了\n");
			break;
		}
		
	}
}
int main() {
	int input = 0;
	//设置随机种子数字的函数,使用time()函数改变随机种子
	srand((unsigned int)time(0));
	do {
		menu();
		printf("请选择;\n");
		scanf("%d", &input);
		switch (input) {
		case 1:
			game();
			break;
		case 0:
			break;
		default:
			printf("输入有误,请重新输入\n");
			break;
		}
	} while (input);
	system("pause");
	return 0;
}

运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44776578/article/details/88782557