1>将数组A中的内容和数组B中的内容进行交换(数组一样大)
思路:新建一个数组作为中间数组进行交换.
代码如下:
#include<stdio.h>
#include<stdlib.h>
void Func(int a[], int b[]);
void Print(int a[]);
int main(void){
int a[10] = {1,2,3,4,5,6,7,8,9,10};
int b[10] = {10,9,8,7,6,5,4,3,2,1};
int c[10] = {0};
Func(c, a);
Func(a, b);
Func(b, c);
Print(a);
Print(b);
system("pause");
return 0;
}
void Func(int a[], int b[]){
for (int i = 0; i <10; ++i){
a[i] = b[i];
}
}
void Print(int a[]){
for (int i = 0; i < 10; ++i){
printf("%d ", a[i]);
}
printf("\n");
}
2>计算1/1-1/2+1/3-1/4+1/5…+1/99-1/100的值.
思路:通过每一轮循环给分子乘以-1来控制加数的正负号,计算出和.
代码如下:
#include<stdio.h>
#include<stdlib.h>
int main(void){
double sum=0;
double f = 1.0;
for (int i = 1; i <101; ++i){
sum += f / i;
f *= -1;
}
printf("%lf\n", sum);
system("pause");
return 0;
}
3>编写程序数一下1到199的所有整数中出现过多少次数字9
思路:依次先求出个位,判断是否为9,如果是,计数器加1,再求出十位,判断是否为9,如果是,计数器加1.
代码如下:
#include<stdio.h>
#include<stdlib.h>
int main(void){
int count = 0;
for (int i = 1; i < 10; i++){
if (i % 10 == 9){
++count;
}
}
for (int i = 10; i < 101; i++){
if (i%10 == 9){
++count;
}
if (i / 10 % 10 == 9){
++count;
}
}
d\n", count);
system("pause");
return 0;
}