输入描述:
多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
输出描述:
针对每行输入,输出用“*”组成的X形图案。
示例1
输入:
5
复制输出:
* * * * * * * * *
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (j == i || j == n - i + 1) {
printf("*");
}
else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
输入描述:
多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数量。
输出描述:
针对每行输入,输出用“*”组成的“空心”正方形,每个“*”后面有一个空格。
示例1
输入:
4
复制输出:
* * * * * * * * * * * *
#include <stdio.h>
int main() {
int h, j, k,i,o, n;
scanf_s("%d", &n);
for (h = 1; h <= n; h++) {
printf("* ");
}
printf("\n");
for(i=1;i<=n-2;i++){
for (j = 1; j <= 2 * n - 1; j++) {
if (j == 1 || j == 2 * n - 1) {
printf("*");
}
else {
printf(" ");
}
}
printf("\n");
}
for (o = 1; o <= n; o++) {
printf("* ");
}
}
输入描述:
第一行包含两个整数n和m,表示一个矩阵包含n行m列,用空格分隔。 (1≤n≤10,1≤m≤10)
从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第一个矩阵中的元素。
输出描述:
输出m行n列,为矩阵转置后的结果。每个数后面有一个空格。
示例1
输入:
2 3 1 2 3 4 5 6
复制输出:
1 4 2 5 3 6
#include <stdio.h>
int main() {
int n, m;
scanf("%d %d", &n, &m); // 输入矩阵的行数和列数
int matrix[n][m]; // 声明一个二维数组来存储矩阵
// 输入矩阵的元素
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 转置矩阵
int transposed[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
transposed[i][j] = matrix[j][i];
}
}
// 输出转置后的矩阵
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
return 0;
}
输入描述:
一行,输入10个整数(范围-231~231-1),用空格分隔。
输出描述:
一行,逆序输出输入的10个整数,用空格分隔。
示例1
输入:
1 2 3 4 5 6 7 8 9 10
复制输出:
10 9 8 7 6 5 4 3 2 1
#include <stdio.h>
int main() {
int i,h,j,arr[10] = { 0 };
for (i = 0; i < 10; i++) {
scanf_s("%d", &arr[i]);
}
for (h = 0; h < 5; h++) {
int size;
size = arr[h];
arr[h]=arr[9 - h];
arr[9 - h] = size;
}
for (j = 0; j < 10; j++) {
printf("%d ", arr[j]);
}
}
输入描述:
输入包含三行,
第一行包含两个正整数n, m,用空格分隔。n表示第二行第一个升序序列中数字的个数,m表示第三行第二个升序序列中数字的个数。
第二行包含n个整数,用空格分隔。
第三行包含m个整数,用空格分隔。
输出描述:
输出为一行,输出长度为n+m的升序序列,即长度为n的升序序列和长度为m的升序序列中的元素重新进行升序序列排列合并。
示例1
输入:
5 6 1 3 7 9 22 2 8 10 17 33 44
复制输出:
1 2 3 7 8 9 10 17 22 33 44
#include <stdio.h>
int main() {
int n, m, i, h, k, g, l, arr[100] = { 0 }, arr1[100] = { 0 }, arr2[100] = { 0 };
scanf_s("%d %d", &n, &m);
for (i = 0; i < n; i++) {
scanf_s("%d", &arr[i]);
arr2[i] = arr[i];
}
for (h = 0; h < m; h++) {
scanf_s("%d", &arr1[h]);
arr2[n + h] = arr1[h];
}
for (k = 0; k < n + m; k++) {
for (g = 0; g < n+m-1; g++) {
if (arr2[g] > arr2[g + 1]) {
int size = arr2[g];
arr2[g] = arr2[g + 1];
arr2[g + 1] = size;
}
}
}
for (l = 0; l < m + n; l++) {
printf("%d ", arr2[l]);
}
}
作业标题(2787)
【一维数组】输入10个整数,求平均值
作业内容
编写一个程序,从用户输入中读取10个整数并存储在一个数组中。然后,计算并输出这些整数的平均值。
#include <stdio.h>
int main() {
int i, arr[10] = { 0 };
for (i = 0; i < 10; i++) {
scanf_s("%d", &arr[i]);
}
float sum = 0;
for (i = 0; i < 10; i++) {
sum += arr[i];
}
printf("平均数是%f",sum / 10);
}
作业标题(696)
【一维数组】交换数组
作业内容
将数组A中的内容和数组B中的内容进行交换。(数组一样大)
#include <stdio.h>
int main() {
int i, arr[10] = {1,2,3,4,5,6,7,8,9,0}, arr2[10]= { 0,9,8,7,6,5,4,3,2,1 };
for (i = 0; i < 10; i++) {
int temp = arr[i];
arr[i] = arr2[i];
arr2[i] = temp;
}
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr2[i]);
}
}