编程题

加减乘除计算器

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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

int main()
{
float x, y;
char ch;
printf("请输入表达式:\n");
scanf("%f%c%f", &x, &ch, &y);
/*-------------------------begin------------------*/
switch (ch) {
case '+':
printf("结果为%.6f\n", x + y);
break;
case '-':
printf("结果为%.6f\n", x - y);
break;
case '*':
printf("结果为%.6f\n", x * y);
break;
default:
printf("无效的运算符!\n");
}
/*--------------------------end-------------------*/
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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

int main()
{
int i, max;
int arr[10];
printf("请输入10个数组元素:\n");
/*-------------------------begin------------------*/
for(int i=0;i<10;i++){
scanf("%d",&arr[i]);
}
max = arr[0];
for (i = 1; i < 10; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
/*--------------------------end-------------------*/
printf("该数组中的最大值为%d\n", max);

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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main()
{
int arr[10];
int i, j, temp;
//键盘输入元素
printf("请输入10个元素:\n");
/*-------------------------begin------------------*/
for(int i=1;i<10;i++){
scanf("%d",&arr[i]);
}
for (i = 0; i < 10 - 1; i++) {
for (j = 0; j < 10 - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
/*--------------------------end-------------------*/
//打印出排序后的元素
printf("排序:\n");
for (i = 0; i < 10; i++)
{
printf("%-5d", arr[i]);
}

return 0;
}

定义func()函数判断一个数是奇数还是偶数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

void func(int num)
{
/*-------------------------begin------------------*/
if(num%2==0){
printf("该数是偶数");
} else{
printf("该数是基数");
}
/*--------------------------end-------------------*/
}
int main()
{
int num;
printf("请输入一个正整数:");
scanf(" %d", &num);
func(num);
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
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a, b, c;
printf("请输入3个整数:");
scanf("%d%d%d", &a, &b, &c);
/*-------------------------begin------------------*/
if (a >= b && a >= c)
{
printf("%d为最大的数\n", a);
}
else if (b >= a && b >= c)
{
printf("%d为最大的数\n", b);
}
else
{
printf("%d为最大的数\n", c);
}
/*--------------------------end-------------------*/

return 0;
}

用num/10逐渐削减其倍数,判断是几位数。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>

int main()
{
int num, count = 0;
printf("请输入一个不多于4位数的整数:");
scanf("%d", &num);
/*-------------------------begin------------------*/
while (num != 0)
{
num /= 10; // 将 num 除以 10
count++; // 计数器加1
}
/*--------------------------end-------------------*/
printf("这是个%d位数\n", count);
return 0;
}