C语言程序设计题

有一函数 其函数关系如下, 试编程求对于每一自变量的函数值。

y = x^2 (x<0)

y = -0.5x+10 (x<10)

y = x-5

1
2
3
4
5
6
7
8
int main() {
float x, y;
scanf("%f",&x);
if (x < 0) y = x * x;
else if (x >= 0 && x < 10) y = -0.5 * x + 10;
else y = x - 5;
printf("%.2f\n",y);
}

2. 输入10个学生的成绩,分别用函数实现。

(1) 求平均成绩;

(2) 按分数高低进行排序并输出。

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
47
48
float average(int b[]) { // 求平均成绩的函数
int sum = 0;
float avg = 0;
for(int i = 0; i < 10; i++ ) {
sum += b[i]; // 计算成绩总和
avg = sum / 10;

}
return avg;
}

//降序排列
void declinesort (int b[], int n) {
for(int i = 0; i < n; i ++) {
// 确定比较趟数
for (int j = 0; j < n - 1 - i; j++) {
// 如果前一个元素小于后一个元素叫交换
if (b[j] < b[j + 1]) {
int temp = b[j];
b[j] = b[j + 1];
b[j + 1] = temp;

}

}
}
}

int main () {
int a[10];
// int n = sizeof(a) / sizeof(a[0]);
float avg = 0;
for (int i = 0; i < 10; i++) {
scanf("%d",&a[i]);
}

avg = average(a);
// 打印平均成绩
printf("%.2f\n", avg);

// 降序排列
declinesort(a, 10);

for(int i = 0; i < 10; i++) {
printf("%d ",a[i]);
}
return 0;
}

1+2+3+4+…+100

1
2
3
4
5
6
7
8
9
10
11
12
int main () {

int sum = 0;

for (int i = 1; i <= 100; i++) {
sum +=i;
}

printf("%d",sum);


}

1.输出m,n之间所有自然数的和

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
void swap1(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void swap (int& a, int& b) {
int temp = a;
a = b;
b = temp;

}

int main() {
// 输出m,n之间所有自然数的和
int m, n;
int sum = 0;
printf("请输入区间");
scanf("%d %d", &m,&n);
if(m > n) swap(m,n);
if(m > n) swap1(&m,&n);
for(int i = m; i <=n; i++) {
sum += i;
}

printf("m,n之间的自然数的和是:%d",sum);



}

判断输入字符的字母的个数 以*结尾

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
char a[10000];
gets(a);
int sum = 0;
int i = 0;
while (a[i] != '*')
{
if ((a[i] >= 'a' && a[i] <= 'z') || (a[i] >= 'A' && a[i] <= 'Z'))
{
sum++;
}
i++;
}
printf("%d", sum);
return 0;
}

实现1 - 1000之间所有奇数的和并输出

1
2
3
4
5
6
7
8
9
10
11
12
int main () {
int sum = 0;
for (int i = 1; i <= 1000; i++) {
if (i % 2 != 0) {
sum +=i;
}
}

printf("%d\n",sum);

return 0;
}