#include <iostream> #include<cstring> #include<string> using namespace std; int main() { //实验1,10个数据的最值 int i, x[10] = { 90,78,63,75,94,87,86,99,71,85 },sum=0,ave,max,min; for (i = 0; i < 10; i++) { sum = sum + x[i]; } for (i = 1; i < 10; i++) { max = x[0]; if (x[i]>max) { max = x[i]; } min = x[0]; if (x[i]<min) { min = x[i]; } } ave = sum / 10; cout << "最大值=" << max << endl << "最小值=" << min << endl<< "sum=" << sum << endl << "ave=" << ave; system("pause"); return 0; }
2.回文单词的判定
#include <iostream> #include<cstring> using namespace std; const int max = 100; int main() { char a[max]; cout << "a="; cin >> a; for (int i = 0; i <= strlen(a) - 1; i++) { if (a[i] != a[strlen(a) - 1 - i]) cout << "不是回数" << endl; //先判断非,比较方便 break; if (i == strlen(a) - 1 && a[strlen(a) - 1] == a[strlen(a) - 1 - i]) //※执行完全部循环,才判定是否为回文. cout << "是回数!!" << endl; } system("pause"); return 0; }
3.统计单词个数
#include <iostream> #include<cstring> using namespace std; int main() { char a[5][10]; int sum=0,n,i,j ; //char 和 int定义混到一起去了 cout << "输入n个单词"; cin >> n; for (i = 0; i < n; i++) { cin >>a[i] ;//二维数组可以只写一个'[]' } for (j = 0; j < n; j++) { if (a[j][0] == 'c') sum++ ; } cout << "以C开头的单词有" << sum << "个" << endl; system("pause"); return 0; }
4.一个4x4方阵中
①主对角线之和
②辅对角线之积
③方阵中最大值
#include <iostream> #include<cstring> using namespace std; int main() { int a[3][3]; int i, j, sum = 0, mul = 1, max; for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { cin >> a[i][j]; } } //主对角线求和 for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { if (i == j) //第一次运行发现少循环一次,"=="错打为"=" sum = sum + a[i][j]; } } cout << "主对角线求和" << sum << endl; //辅对角线求积 for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { if (i == (3 - j)) mul = mul * a[i][j]; } } cout << "辅对角线求积" << mul << endl; //方阵中最大的元素 max = a[0][0]; //赋初值应该在循环外面,不然每一次循环都会重新赋为a[0][0] for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { if (a[i][j] > max) max = a[i][j]; else max = max; } } cout << "最大值为" << max; system("pause"); return 0; }