20241115-C05-一维数组
原题链接:33673.徐沐瑶专属笔记C++2024-11-15 20:37:05
发布于:江苏
#if 0 
#[学习目标]#:
1.一维数组的定义以初始化 
2.数组的下标概念 
3.数组+for循环的遍历 
4.数组练习 
一、 回文数的判断
/*
	n = 1234
	m = 0 		//4321
	
	m = n%10 	// 4
	n /= 10; 	//n = 123
	n%10 		// 3 
	
	m = m*10 + n%10	//43
	n /= 10		// n = 12 
*/
	int n, m = 0; 
	cin >> n;
	int tmp = n;		//备份一下n的值, 因为最后n变为了0. 
	//将n进行了反转之后存到m上 
	while (n){
		m = m*10 + n%10; 
		n /= 10;
	}
//	cout << m << endl;
	if(m == tmp)
		cout << "YES";
	else 
		cout << "NO"; 
		
		 
二 、array (数组) 
1. 数组的定义以及访问 
//	int a[5] = {1,2,3,4,5}; 	//常规初始化 
//	int a[5] = {1,2,3,4,5,6}; 	//越界初始化:报错	
//	int a[5] = {1};		//部分初始化,其他部分都是0
//	int a[5] = {0};
//	int a[5] = {};		//初始化为 0
	int a[5]; 			//不初始化的结果为 随机数 
	
	cout << a[0] << endl << a[1] << endl;
	cout << a[2] << endl << a[3] << endl;
	
//	cout << a[5] << endl;	//越界访问:不报错 
	
	//i:下标,index,索引 :默认从0开始,不会是负数 
	//遍历, 枚举 
	for (int i=0; i<5; i++){
		cout << a[i] << " ";
	} 
	
2.数组的输入输出	
	int n, a[105] = {}; 
 	cin >> n;
 	for (int i=1; i<=n; i++) 
	 	cin >> a[i];
 	//正序输出 
 	for (int i=1; i<=n; i++) 
	 	cout << a[i] << ' ';
	//逆序输出 
	for (int i=n; i>=1; i--) 
	 	cout << a[i] << ' ';
	 	
3. 打擂台找最大值
/*
6
12 67 2 7 1 5
67
*/ 
	int n, a[105] = {};
	cin >> n;
	for (int i=1; i<=n; i++) 
		cin>>a[i];
	//最大值-打擂台的方法:
	int leizhu = a[1]; 	//先假设第一个人是擂主 
	for (int i=2; i<=n; i++){
		if (a[i] > leizhu){		//如果挑战者a[i]>leizhu,那么更新最大值 
			leizhu = a[i];
		} 
	} 
	cout << leizhu; 
	
#endif
这里空空如也








有帮助,赞一个