C语言初学_循环语句

1、n!的计算

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
int main()
{
	int i = 1;
	int n = 1;
	int ode = 1;
	scanf("%d", &n);
	for (i = 1; i <= n; i++)
	{
		ode = i * ode;
	}
	printf("%d", ode);
    return 0;
}

2、计算1!+2!+……+10!

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
int main()
{
	int i = 1;
	int n = 1;
	int ode = 1;
	int s = 0;
	for (n = 1; n <= 10; n++)
	{
		ode = 1;
		for (i = 1; i <= n; i++)
		{
			ode = i * ode;
		}
		s = s + ode;
	}
	printf("%d\n", s);
	return 0;
}

3、在一个有序数组中查找某个数

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
int searchx(int x, int v[], int n)
{
	int i = 0;
	for (i = 0; i < n; i++)
	{
		if (v[i] == x)
			break;
	}
	return i;
}
int main()
{
	int x = 0;
	int v[] = { 1,2,3,6,8,9,10,11,14,17,18,19 };
	int n = sizeof(v)/sizeof(v[0]);
	printf("请输入要查找的整数:\n");
	scanf("%d", &x);
	int x_pstn = searchx(x, v, n);
	printf("%d\n", x_pstn);
    return 0;
}

优化1

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
int main()
{
	int x = 0;//查找目标数
	scanf("%d", &x);//输入目标数
	int v[] = { 1,13,15,37,44,58,200,201,202,203 };//给定数组
	int s = sizeof(v) / sizeof(v[0]);//计算数组元素个数
	int r_n = 0;
	int l_n = s-1;
	int hlf_n = (r_n + l_n) / 2;
	while (r_n <= l_n)
	{
		if (x == v[hlf_n])
		{
			printf("%d", hlf_n);
			break;
		}
		else if (x < v[hlf_n])
		{
			l_n = hlf_n-1;
			hlf_n = (r_n + l_n) / 2;
		}
		else
		{
			r_n = hlf_n+1;
			hlf_n = (r_n + l_n) / 2;
		}
	}
	if (x != v[hlf_n])
	{
		printf("没有找到目标数");
	}
	return 0;
}

4、输出一行文字,以从两边向中间显示的方式

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<windows.h>
int main()
{
	char arr1[] = { "Welcome to Stary Valley" };
	char arr2[] = { "***********************" };
	int r_n = 0;
	int l_n = strlen(arr1) - 1;
	while (r_n <= l_n)
	{
		arr2[r_n] = arr1[r_n];
		arr2[l_n] = arr1[l_n];
		r_n++;
		l_n--;
		printf("%s\n", arr2);
		Sleep(222);
		system("cls");
	}
	printf("%s", arr1);
	return 0;
}

5、模拟用户登录,只能登陆三次(三次密码错误则退出程序)

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<windows.h>
int main()
{
	int i = 0;
	char password[] = {0};
	for (i = 0; i < 3; i++)
	{
		printf("请输入密码");
		scanf("%s", password);
		if (strcmp(password, "HelloWorld2024") == 0)
		{
			printf("密码正确\n");
			break;
		}
		else
		{
			printf("密码错误请重新输入\n");
		}
	}
	if (i == 3)
	{
		printf("密码错误,程序自动销毁!\n");
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值