MT1212 乘法表
(1)题目
请编写一个简单程序,输出九九乘法表。输入n,就输出乘法表到n的地方。
格式
输入格式: 输入整型 输出格式: 输出整型。形式如:1*1=1
样例1
输入: 5 输出: 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 4*1=4 4*2=8 4*3=12 4*4=16 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
备注
乘式之间一个空格。乘法结果占两格,不足两位的左对齐。
(2)参考代码
#include<stdio.h> int main() { int n, i, j; scanf("%d", &n); for (i=1;i<=n;i++) { for (j=1;j<=i;j++) { printf("%d*%d=%-2d ", i, j, i*j); } printf("\n"); } return 0; }
MT1213 x个a
(1)题目
求a+aa+aaa+…+a…a(x个a),x和a由键盘输入。
格式
输入格式: 输入为整型,空格分隔 输出格式: 输出为整型
样例1
输入: 3 1 输出: 123
(2)参考代码
#include<stdio.h> int main() { int x, a, temp, i, num = 1, sum = 0; scanf("%d %d", &x, &a); for (i=1;i<x;i++) { num *= 10; } for (i=1;i<=x;i++) { temp = a * i; sum += temp * num; num /= 10; } printf("%d", sum); return 0; }
MT1214 上三角矩阵
(1)题目
输入3X3的整型矩阵A,输出对应的上三角矩阵。
格式
输入格式: 输入矩阵,元素在0到9之间,空格分隔。 输出格式: 输出矩阵,空格分隔。
样例1
输入: 1 2 3 4 5 6 7 8 9 输出: 1 2 3 0 5 6 0 0 9
(2)参考代码
#include<stdio.h> #define N 9 #define X 3 #define Y 3 int main() { int a[N], i, j, count; for (i=0;i<N;i++) { scanf("%d", &a[i]); } count = 0; for (i=0;i<X;i++) { for (j=0;j<Y;j++) { if (count == 3 || count == 6 || count == 7) { printf("0 "); } else { printf("%d ", a[count]); } count++; } printf("\n"); } return 0; }
MT1215 下三角矩阵
(1)题目
输入3X3的整型矩阵A,输出对应的下三角矩阵。
格式
输入格式: 输入矩阵,元素在0到9之间,空格分隔。 输出格式: 输出矩阵,空格分隔。
样例1
输入: 1 2 3 4 5 6 7 8 9 输出: 1 0 0 4 5 0 7 8 9
(2)参考代码
#include<stdio.h> #define N 9 #define X 3 #define Y 3 int main() { int a[N], i, j, count; for (i=0;i<N;i++) { scanf("%d", &a[i]); } count = 0; for (i=0;i<X;i++) { for (j=0;j<Y;j++) { if (count == 1 || count == 2 || count == 5) { printf("0 "); } else { printf("%d ", a[count]); } count++; } printf("\n"); } return 0; }
MT1216 数组加法
(1)题目
有两个数组A和B,他们都有N个整型元素,编写一个函数,实现他们的“加法”把对应元素相加,结果放在C数组的对应位置,输出C数组。
格式
输入格式: 第一行输入数组长度N,后两行分别输入A,B数组的元素,整型,空格分隔。 输出格式: 输出整型,空格分隔。
样例1
输入: 5 1 2 3 4 5 5 4 3 2 1 输出: 6 6 6 6 6
(2)参考代码
#include<stdio.h> int main() { int N, i; scanf("%d", &N); int A[N], B[N], C[N]; for (i = 0; i < N; i++) { scanf("%d", &A[i]); } for (i = 0; i < N; i++) { scanf("%d", &B[i]); } for (i = 0; i < N; i++) { C[i] = A[i] + B[i]; } for (i = 0; i < N; i++) { printf("%d ", C[i]); } return 0; }
MT1217 矩阵乘法
(1)题目
输入3X4整型矩阵A和4X3的整型矩阵B,计算A*B,放到矩阵C里面,输出矩阵C。
格式
输入格式: 分两行输入两个矩阵,空格分隔。 输出格式: 按矩阵形式输出,整型,每个数字占3列,空格分隔。
样例1
输入: 3 0 0 7 0 0 0 -1 0 2 0 0 4 1 0 0 1 -1 0 2 1 0 2 1 输出: 12 17 7 0 -2 -1 0 2 -2
(2)参考代码
#include<stdio.h> int main() { int A[3][4], B[4][3], C[3][3]; int i, j, k, num; for (i = 0; i < 3; i++) { for (j = 0; j < 4; j++) { scanf("%d", &A[i][j]); } } for (i = 0; i < 4; i++) { for (j = 0; j < 3; j++) { scanf("%d", &B[i][j]); } } for (k = 0; k < 3; k++) { for (i = 0; i < 3; i++) { num = 0; for (j = 0; j < 4; j++) { num += A[k][j] * B[j][i]; } C[k][i] = num; } } for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { printf("%3d ", C[i][j]); } printf("\n"); } return 0;
MT1218 斐波那契数列
(1)题目
请编写一个简单程序,求斐波那契数列前10个数
格式
输入格式: 无 输出格式: 输出整型
样例1
输入格式: 无 输出格式: 1 1 2 3 5 8 13 21 34 55
(2)参考代码
#include<stdio.h> #define N 10 int main() { int a[N], i; a[0] = 1; for (i=0;i<N;i++) { if (i-2 >= 0) { a[i] = a[i-1] + a[i-2]; } else if (i-1 >= 0) { a[i] = a[i-1] + 0; } else { a[i] = a[i]; } } for (i=0;i<N;i++) { printf("%d ", a[i]); } return 0; }
MT1219斐波那契数列II
(1)题目
格式
输入格式: 输入整型 输出格式: 输出YES或者NO
样例1
输入: 5 输出: YES
(2)参考代码
#include<stdio.h> int main() { int N, a = 0, b = 1, c = 2; scanf("%d", &N); if (N == 1 || N == 2 || N == 0) { printf("YES"); return 0; } while (c <= N) { c = a + b; a = b; b = c; if (c == N) { printf("YES"); return 0; } } printf("NO"); return 0; }
MT1220斐波那契数列III
(1)题目
输入一个正整数N(N< 50),输出斐波那契数列前N项。
格式
输入格式: 输入整型 输出格式: 输出整型,空格分隔。
样例1
输入: 5 输出: 1 1 2 3 5
(2)参考代码
#include<stdio.h> int main() { int N; scanf("%d", &N); int a[N], i; a[0] = 1; for (i = 0; i < N; i++) { if (i - 2 >= 0) { a[i] = a[i - 1] + a[i - 2]; } else if (i - 1 >= 0) { a[i] = a[i - 1] + 0; } else { a[i] = a[i]; } } for (i = 0; i < N; i++) { printf("%d ", a[i]); } return 0; }