c程序设计期中试题及答案

  • 格式:docx
  • 大小:37.51 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c程序设计期中试题及答案

一、选择题

1. C语言中,下列哪个关键字可以声明常量?

A. const

B. static

C. extern

D. volatile

答案:A. const

2. 下列关于指针的说法中,错误的是?

A. 指针保存的是变量的地址

B. 指针变量必须在使用之前初始化

C. 指针可以指向一个函数

D. 指针占用的内存空间和指针指向的数据类型有关

答案:B. 指针变量必须在使用之前初始化

3. 下列循环结构中,哪个语句是用于结束当前循环,进入下一轮循环的?

A. break

B. continue

D. goto

答案:B. continue

4. 下列C语言中的标准库函数中,不属于输入输出函数的是?

A. printf()

B. scanf()

C. gets()

D. malloc()

答案:D. malloc()

5. C语言中,以下哪个运算符的优先级最高?

A. =

B. &&

C. *

D. ?:

答案:D. ?:

二、填空题

1. 编写一个函数,判断一个数是否为质数。函数原型为:

int isPrime(int num);

```c

int isPrime(int num) {

int i;

if (num <= 1) {

return 0;

}

for (i = 2; i < num; i++) {

if (num % i == 0) {

return 0;

}

}

return 1;

}

```

2. 填写以下代码的输出结果:```c

#include

int main() {

char str[] = "Hello";

printf("%d\n", sizeof(str));

printf("%d\n", strlen(str));

return 0;

}

```

答案:

8

5

三、编程题

1. 编写一个C程序,实现将一个字符串中的小写字母转换为大写字母的功能。要求原字符串不变,结果存放在新的字符串中。函数原型为:

void convertToUpper(const char* src, char* dest);

答案:

```c

#include

#include

void convertToUpper(const char* src, char* dest) {

while (*src) {

if (*src >= 'a' && *src <= 'z') {

*dest = *src - 32;

} else {

*dest = *src;

}

src++;

dest++;

}

*dest = '\0';

}

int main() {

const char* src = "Hello, World!";

char dest[20];

convertToUpper(src, dest);

printf("原字符串:%s\n", src);

printf("转换后的字符串:%s\n", dest); return 0;

}

```

2. 编写一个C程序,实现将一个整数数组中的元素按照从小到大的顺序进行排序。要求使用冒泡排序算法实现。函数原型为:void bubbleSort(int arr[], int len);

答案:

```c

#include

void bubbleSort(int arr[], int len) {

int i, j, temp;

for (i = 0; i < len - 1; i++) {

for (j = 0; j < len - i - 1; j++) {

if (arr[j] > arr[j + 1]) {

temp = arr[j];

arr[j] = arr[j + 1];

arr[j + 1] = temp;

}

}

}

}

int main() {

int arr[] = {4, 2, 8, 5, 1};

int len = sizeof(arr) / sizeof(arr[0]);

bubbleSort(arr, len);

printf("排序后的数组:");

for (int i = 0; i < len; i++) {

printf("%d ", arr[i]);

}

printf("\n");

return 0;

}

```

以上是C程序设计期中试题及答案的内容。希望对你有所帮助!

相关主题