一些简单问题的c语言编程2

1.将数组A中的内容和数组B中的内容进行交换。(数组一样大)
简单思路类似两数交换一样,但是好像还可以用某些函数来直接实现。(我暂时还不会,有待大佬赐教)

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main()
{
	int arr1[2] = { 0,1 };
	int arr2[2] = { 0,1 };
	int arr3[2] = { 0,1 };
	printf("请输入两组两个整数\n");
	scanf("%d %d %d %d", &arr1[0], &arr1[1], &arr2[0], &arr2[1]);
	arr3[0] = arr1[0];
	arr3[1] = arr1[1];
	arr1[0] = arr2[0];
	arr1[1] = arr2[1];
	arr2[0] = arr3[0];
	arr2[1] = arr3[1];
	printf("%d %d %d %d", arr1[0], arr1[1], arr2[0], arr2[1]);
		system("pause");
	return 0;
}

2计算1/1-1/2+1/3-1/4+1/5…+1/99-1/100的值。
思路,显然采用循环的手段来实现编程,由于奇偶项符号交错,所以把原式分为奇偶两部分分别进行编程。

#include<stdio.h>
#include<stdlib.h>
double add1(int a)//定义add1函数来实现奇数项求和
{
	int i = 0;
	double sum1 = 0;
	for (i = 1; i <= a; i = i + 2)
	{
		sum1 = 1.0 / i + sum1;
	}
	return sum1;
}
double add2(int n)//定义add2函数来实现偶数项求和
{
	int i = 0;
	double sum1 = 0;
	for (i = 2; i <= n; i = i + 2)
	{
		sum1 = 1.0 / i + sum1;
	}
	return sum1;
}
double main()
{
	double sum = 0;
	sum = add1(99);
	printf("%f", sum);
	system("pause");
	return 0;
}

3.编写程序数一下1到100的所有整数中出现多少次数字9。
思路,由于只需考虑个位数和十位数含有数字9这两种情况,所以1到100分成1到89和90到100两部分。

#include<stdio.h>
#include<stdlib.h>
int main()
{
	int i = 0;
	int a = 0;
	for (i = 1; i < 90; i++)//i表示循环变量,b表示所求的余数,a表示所求的次数
	{
		int b = 0;
		b = (i + 1) % 10;
		if (b == 0)
		{
			a = a + 1;
		}
	}
	a = a + 10;
	printf("%d", a);
	system("pause");
	return 0;
}

由于自己是新手上路,难免对于解决这些题目的有些方法显得很笨甚至是想不到,还有劳各位大佬能够指点一二,本人定当虚心接受,感谢万分!

猜你喜欢

转载自blog.csdn.net/asd0356/article/details/88619663