计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。
这是一个比较简单的利用for循环就可以完成的代码。
需要注意的是如果定义sum来计算和的话,
sum需要使用float来定义。
int main()
{
int i = 0;
float sum = 0.0;
int j = 1;
for (i = 1; i <= 100; i++)
{
sum = sum + j *(1.0 / i);
j = -j;
}
printf("%f\n", sum);
return 0;
}
编写程序数一下 1到 100 的所有整数中出现多少次数字9。
首先来分析一下这个题目,1到100会出现9的就是9,19…99.
这些我们利用模运算和循环就可以得到。
然后我们还发现90…98这些利用上面的方法是得不出的
如果我们定义数字的类型是整型的话,就可以利用”/”来进行运算。
比如95 / 10的结果是9.
int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 100; i++)
{
if (i % 10 == 9)
{
count++;
}
if (i / 10 == 9)
{
count++;
}
}
printf("出现9的次数为:%d\n", count);
return 0;
}
将数组A中的内容和数组B中的内容进行交换。(数组一样大)
这道题对于初学者如果不静下心来好好思考的话,还是有一定难度的。
我们不妨理一下思路。
①需要定义两个数组
②需要利用for循环将两个数组内的内容一一交换。
如何进行交换呢。
这时候我们可以看一下上一篇博客回顾一下
可以定义一个新的变量做“桶”来实现交换。
这次我们可以建立一个外部函数进行数的交换,在主函数中调用即可。
int swap(int *x, int* y)
{
int t;
t = *x;
*x = *y;
*y = t;
}
int main()
{
int i = 0;
int j = 0;
int k = 0;
int a[10];
int b[10];
printf("输入a数组的内容:\n");
for (i = 0; i<10; i++)
{
scanf("%d", &a[i]);
}
printf("输入b数组的内容:\n");
for (j = 0; j<10; j++)
{
scanf("%d", &b[j]);
}
for (k = 0; k<10; k++)
{
swap(&a[k], &b[k]); // 调用指针函数进行元素的交换
}
printf("互换后的a数组为:\n");
for (i = 0; i<10; i++)
{
printf("%d ", a[i]);
}
printf("\n");
printf("互换后的b数组为:\n");
for (j = 0; j<10; j++)
{
printf("%d ", b[j]);
}
printf("\n");
return 0;
}