C语言循环语句练习
1、将数组A中的内容和数组B中的内容进行交换。(数组一样大)
//与交换两个变量的值的方法类似,可以采用对两个数组内容进行异或运算来将A、B数组内容交换。设定A、B数组的大小都为10,采用for循环实现数组内容的写入与输出。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main() {
int i, j, k;
int A[10];
int B[10];
printf("请输入A数组中的内容:");
for(i = 0; i < 10; ++i) {
scanf("%d", &A[i]);
}
printf("请输入B数组的内容:");
for(j = 0; j < 10; ++j) {
scanf("%d", &B[j]);
}
for(k = 0; k < 10; ++k) {
A[k]= A[k] ^ B[k];
B[k]= A[k] ^ B[k];
A[k]= A[k] ^ B[k];
}
printf("互换后的A数组内容:");
for(i = 0; i < 10; ++i) {
printf("%d ", A[i]);
}
printf("互换后的B数组内容:");
for(j = 0; j < 10; ++j) {
printf("%d ", B[j]);
}
system("pause");
return 0;
}
2、 计算1/1-1/2+1/3-1/4+1/5…….+1/99-1/100的值。
//分母的1-100采用循环来实现,设定符号位sign,每循环一次符号位取反,进行下一次运算。要注意的是变量的类型很重要,会影响到计算结果。
#include<stdio.h>
#include<stdlib.h>
int main() {
double sign = 1.0;//sign用来表示数值的符号
double result=0.0;
for(int i = 1; i <= 100; ++i) {
result+= sign / i;
sign= -sign;//每循环一次,符号位取反
}
printf("result=%10.15f\n", result);
system("pause");
return 0;
}
运行结果:
3、编写程序数一下1到100的所有的整数中出现多少次数字9。
//在1-100的整数中数9出现的次数,除了循环语句实现1-100之外,需要得出当次整数的个位与十位,若为9,则count的值+1,最后输出count的值。
#include<stdio.h>
#include<stdlib.h>
//编写程序数一下1-100的所有的整数中,出现多少次的数字9
int main() {
int count = 0;//统计9的个数
int num = 0;
int indiv, ten;//整数的个位、十位
for(int i = 1; i <= 100; ++i) {
num= i;
ten= num / 10;
indiv= num - ten * 10;
if(ten == 9) {
count++;
}
if(indiv == 9) {
count++;
}
}
printf("1-100的所有的整数中,数字9出现的次数是:%d\n", count);
system("pause");
return 0;
}
运行结果: