A类
1.(原创)以下程序的运行结果为:(注:swap的中文释义是交换)
#include <stdio.h>
int swap(int a, int b) {
int temp;
temp = a;
a = b;
b = temp;
return a;
}
int main() {
int a, b;
a = 23, b = 45;
swap(a, b);
printf("a=%d,b=%d\n", a, b);
return 0;
}
2.(原创)以下程序的运行结果为:
#include <stdio.h>
int main() {
int i, j;
for (i = 0; i < 5; i++) {
for (j = 0; j < i; j++) {
putchar(' '); //引号内是一个空格
}
for (j = 0; j < 5; j++) {
putchar('*');
}
putchar('\n');
}
return 0;
}
B类
3.(卷1题二 易改难)下列程序的功能是:用户输入一个字符串,将其中所有大写字母转成小写,小写字母转成大写,然后输出。请补全下列代码实现此功能。
#include <stdio.h>
void read(char *p) {
char ch;
int i = 0;
while (______________) { //此处要用到getchar()
p[i++] = ch;
}
p[i] = '\0';
}
void print(char *p) {
int i = 0;
while (______________) {
putchar(p[i++]);
}
}
void convert(char *p) {
____________________
//在此处补全代码
}
int main() {
char a[1000];
read(a);
convert(a);
print(a);
return 0;
}
程序运行效果图:
--------------------------------以下为答案-----------------------------------
1. a=23,b=45
2.
3.
#include <stdio.h>
void read(char *p) {
char ch;
int i = 0;
while ((ch = getchar()) != '\n') {
p[i++] = ch;
}
p[i] = '\0';
}
void print(char *p) {
int i = 0;
while (p[i] != '\0') {
putchar(p[i++]);
}
}
void convert(char *p) {
int i = 0;
while (p[i] != '\0') {
if ('a' <= p[i] && p[i] <= 'z') {
p[i] -= 32;
} else if ('A' <= p[i] && p[i] <= 'Z') {
p[i] += 32;
}
i++;
}
}
int main() {
char a[1000];
read(a);
convert(a);
print(a);
return 0;
}