CSCC语言编程测试题
猫条· 然后是几点
作者 翁恺 单位 浙江大学
有时候人们用四位数字表示一个时间,比如 1106
表示 11点零 6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。
读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,例如 5点 30分表示为530
;0点30分表示为 030
。注意,第二个数字表示的分钟数可能超过 60,也可能是负数。
输入格式:
输入在一行中给出 2个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即 5点 30分表示为 530
; 0点 30分表示为030
。流逝的分钟数可能超过60,也可能是负数。
输出格式:
输出不多于四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。
输入样例:1120 110
输出样例:1310
· 最后一课
输入数字,遍历数组,数组倒序遍历
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| #include <stdio.h> int main() { int arr[5]; int i; for (i = 0;i<5; i++) { scanf_s("%d", &arr[i]); }
int len = sizeof(arr) / sizeof(int); for (i=0; i < len; i++) { printf("%d ",arr[i]); } printf("\n");
for (i=0; i < len / 2; i++) { int temp = arr[i]; arr[i] = arr[5 - i - 1]; arr[5 - i - 1] = temp;
} for (i = 0; i < len; i++) { printf("%d ", arr[i]); } printf("\n");
return 0; }
|
数组从小到大排序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| #include <stdio.h>
void arrange(int a[],int n) { int i = 0, j, max; for (i; i < 10; i++) { max = i; for (j=i+1; j < 10; j++) { if (a[j] > a[max]) { max = j; }
} if (max != i) { int temp = a[i]; a[i] = a[max]; a[max] = temp; } } }
int main() { int arr[10]; int i; for (i = 0; i < 10; i++) { scanf_s("%d", &arr[i]); }
int len = sizeof(arr) / sizeof(int);
arrange(arr, len);
for (i = 0; i < len; i++) { printf("%d ", arr[i]); } printf("\n");
return 0; }
|
(其实还有一种算法)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| #include <stdio.h>
void selectionSort(int arr[], int n) { int i, j, max_idx, temp;
for (i = 0; i < n - 1; i++) { max_idx = i; for (j = i + 1; j < n; j++) { if (arr[j] > arr[max_idx]) { max_idx = j; } }
if (max_idx != i) { temp = arr[i]; arr[i] = arr[max_idx]; arr[max_idx] = temp; } } }
int main() { int arr[] = {64, 25, 12, 22, 11}; int n = sizeof(arr) / sizeof(arr[0]);
selectionSort(arr, n);
printf("Sorted array in descending order: \n"); for (int i = 0; i < n; i++) { printf("%d ", arr[i]); } printf("\n");
return 0; }
|
· 上机模拟