用户名或者密码错误
| 注册账号 | 忘记密码
<->

ch10 数组与循环 - 课堂代码

zzdd 2022-08-24 15:21:13 2022-08-24 16:32:54

算 n 个数的总和、平均值、挑出比平均值大的数输出

int n;
cin >> n;
int sum = 0;
// 循环输入 n 个数,存进数组 
for(int i = 1; i <= n; i++) {
	cin >> A[i];
	sum += A[i];
}
// 求输入的那 n 个元素的和
cout << "这些元素的和是:" << sum << endl;
double avg = sum * 1.0 / n;
cout << "这些元素的平均是:" << avg << endl; 
cout << "比平均值大的有:" ;
for(int i = 1; i <= n; i++){
	if(A[i] > avg){
		cout << A[i] << " ";
	}
}

求数组中所有数的最大值,以及最大值在数组中的位置(下标)

int n;
cin >> n;
// 循环输入 n 个数,存进数组 
for(int i = 1; i <= n; i++) {
	cin >> A[i];
}
// 找到数组中所有元素的最大值
int Max, MaxI; // MaxI 存的是最大值的下标 
for(int i = 1; i <= n; i++){
	if(i == 1 || A[i] > Max){
		Max = A[i]; // 记录下最大值  
		MaxI = i;   // 记录下最大值的下标 
	}
} 
cout << "数组中的最大值是:" << Max << endl; 
cout << "最大值所在的下标是:" << MaxI ;

统计 n ~ m 中每一个数的各个数码共出现几次(0,1,2......9)

for(int i = m; i <= n; i++){
	int cpyI = i;
	while(cpyI > 0){
		int r = cpyI % 10;
		cnt[r]++;
		cpyI /= 10;
	}
} 

计算数组中,所有的“连续的m个数的和”

for(int i = 1; i <= _______ ; i++){
	int sum = 0;  // 以 A[i] 为起点,计算连续 m 个数的和 
	for(int j = 0; j < _________ ;  j++){
		sum += A[i + j];
	} 
	cout << sum ;
}

用数组标记 xxx 是否 xx

bool isDead[11]; // 用来标记每一棵树是否活着 
// 例如 isDead[5] == 0 代表 5 号树活着
//	isDead[3] == 1 代表 3 号树被砍 


for( _________ ){
	int a, b;
	cin >> a >> b;
	// 把 a ~ b 号树砍掉 
	for(int i = a; i <= b; i++){ 
		______________; // 砍掉 i 号树 
	}
} 
for(int i = 1; i <= 10; i++){
	if(isDead[i] == 0) cnt++; 
}

共 5 条回复

pony
JiangJiexun

好好好

JiangJiexun

哈哈哈哈哈哈

WuHaoyu

你好你好你好

WuHaoyu

你好