1.从键盘输入6个整数
2.找出6个整数中的最大值并将其输出到控制台
运行
#include
#define N 6 // 定义常量N,修改此处可调整输入整数的数量
int main() {
int num[N], max, i;
for (i = 0; i < N; i++) {
printf("请输入第%d个整数:", i + 1);
while (scanf("%d", &num[i]) != 1) {
printf("输入错误,请输入整数:");
while (getchar() != '\n');
}
}
max = num[0];
for (i = 1; i < N; i++) {
if (num[i] > max) {
max = num[i];
}
}
printf("最大值是:%d\n", max);
return 0;
}
1.从键盘输入6个整数
2.使用冒泡排序法将这6个整数从小到大排序
#include
int main() {
int num[6];
int i, j;
int temp;
for (i = 0; i < 6; i++) {
printf("请输入第%d个整数:", i + 1);
while (scanf("%d", &num[i]) != 1) {
printf("输入错误,请输入整数:");
while (getchar() != '\n');
}
}
for (i = 0; i < 5; i++) {
for (j = 0; j < 5 - i; j++) {
if (num[j] > num[j + 1]) {
temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
}
}
printf("从小到大排序后的结果:");
for (i = 0; i < 6; i++) {
printf("%d ", num[i]);
}
printf("\n");
return 0;
}
矩阵转置是线性代数的基本运算就是将矩阵的行,列交换,即将行变成列,将列变成行,要求编写程序,实现输入一个4行4列的矩阵,将矩阵转置后输出
#include
int main() {
int mat[4][4], trans[4][4];
int i, j;
printf("请输入4行4列矩阵的16个元素(每行输入4个整数,空格分隔):\n");
for (i = 0; i < 4; i++) {
printf("请输入第%d行的4个元素:", i + 1);
for (j = 0; j < 4; j++) {
while (scanf("%d", &mat[i][j]) != 1) {
printf("输入错误,请输入整数:");
while (getchar() != '\n');
}
}
}
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
trans[j][i] = mat[i][j];
}
}
printf("\n原4×4矩阵:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%4d", mat[i][j]);
}
printf("\n");
}
printf("\n转置后的4×4矩阵:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%4d", trans[i][j]);
}
printf("\n");
}
return 0;
}
通过豆包可以进行优化
#include
int main() {
// 定义原矩阵mat、转置矩阵trans,循环变量i(行)、j(列)
int mat[4][4], trans[4][4];
int i, j;
// 第一步:输入4行4列矩阵的元素
printf("请输入4行4列矩阵的16个元素(每行输入4个整数,空格分隔):\n");
for (i = 0; i < 4; i++) { // 遍历4行
printf("请输入第%d行的4个元素:", i + 1);
for (j = 0; j < 4; j++) { // 遍历每行的4列
// 输入校验(可选,避免非整数输入)
while (scanf("%d", &mat[i][j]) != 1) {
printf("输入错误,请输入整数:");
while (getchar() != '\n'); // 清空无效输入
}
}
}
// 第二步:矩阵转置(核心逻辑)
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
// 原矩阵第i行j列 → 转置矩阵第j行i列
trans[j][i] = mat[i][j];
}
}
// 第三步:输出结果(原矩阵 + 转置矩阵)
printf("\n原4×4矩阵:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%4d", mat[i][j]); // %4d 让输出对齐,更美观
}
printf("\n"); // 每行结束换行
}
printf("\n转置后的4×4矩阵:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%4d", trans[i][j]);
}
printf("\n");
}
return 0;
}