admin 管理员组

文章数量: 887021


2023年12月18日发(作者:读取xml文件的路径)

计算机二级《C语言》模拟试题及答案

第一部分:选择题

1. 下列哪个不是C语言的关键字?

A. switch

B. int

C. var

D. return

答案:C

2. C语言中的字符常量用单引号括起来,字符串常量用双引号括起来。

A. 对

B. 错

答案:A

3. 运算符“++”表示自加一,运算符“--”表示自减一。

A. 对

B. 错

答案:A

4. 下面哪种变量定义方式是合法的?

A. int 6_and_7 = 67;

B. int ans1 = 1.5;

C. float num1 = 3.14;

D. char = 'c';

答案:C

5. 下面关于if语句的描述正确的是?

A. if语句必须有else分支。

B. if语句判断条件可以是字符型变量。

C. if语句可以嵌套使用。

D. if语句不能使用逻辑运算符。

答案:C

6. 下面哪种循环结构可以一次都不执行循环体?

A. for循环

B. while循环

C. do-while循环

D. 都不可以

答案:B

7. 下面哪个函数是用来从键盘获取一个字符并输出的?

A. printf()

B. scanf()

C. gets()

D. putchar()

答案:D

8. 下面哪个函数是用来比较两个字符串是否相等的?

A. strcp()

B. strcmp()

C. strstr()

D. sprintf()

答案:B

9. C语言中的数组下标是从0开始的。

A. 对

B. 错

答案:A

10. 下面哪个运算符有最高的优先级?

A. ++

B. +

C. *

D. =

答案:A

第二部分:填空题

1. 下列标识符是合法的。(多选)

( ) today_is_Friday

( ) 七夕节快乐

( ) month-1

( ) NAME

( ) 3+5num

答案:A和D

2. int num = ____; 语句将会把变量num的值赋为10。

答案:10

3. 在for循环中,______ 语句用于控制循环条件。

答案:判断

4. int num[5] = {1,2,3,4,5}; 语句定义了一个数组,该数组的元素个数为______。

答案:5

5. 如果知道一个字符变量的ASCII码值,可以用______函数将其转换为字符。

答案:putchar()

6. 在C语言中,常量不能被修改,变量可以被修改。

答案:对

7. 下列代码的输出结果是:2

int a = 1;

a++;

printf("%d", a);

答案:2

8. 下列代码的输出结果是:not equal

char str1[] = "hello";

char str2[] = "world";

if (strcp(str1, str2) == 0)

printf("equal");

else

printf("not equal");

答案:not equal

9. 下列哪个循环结构会先执行一次循环体,然后再根据条件判断是否继续执行?

A. for循环

B. while循环

C. do-while循环

答案:C

10. 下列代码的输出结果是:2

int num[] = {1,2,3,4,5};

printf("%d", num[1]);

答案:2

第三部分:编程题

1. 编写一个程序,从键盘输入一个整数n,计算并输出1到n之间所有的奇数和偶数。

#include

int main()

{

int n, i, odd_sum = 0, even_sum = 0;

printf("请输入一个整数:");

scanf("%d", &n);

for(i = 1; i <= n; i++)

{

if(i % 2 == 0)

even_sum += i;

else

odd_sum += i;

}

printf("1到%d之间的所有奇数和为:%dn", n,

odd_sum);

printf("1到%d之间的所有偶数和为:%dn", n,

even_sum);

return 0;

}

2. 编写一个程序,从键盘输入一个字符串,输出这个字符串的长度。

#include

#include

int main()

{

char str[100];

printf("请输入一个字符串:");

gets(str);

printf("该字符串的长度为:%dn", strlen(str));

return 0;

}

3. 编写一个程序,从键盘输入5个整数,计算并输出它们的平均值。

#include

int main()

{

int i, num, sum = 0;

float avg;

printf("请输入5个整数:");

for(i = 1; i <= 5; i++)

{

scanf("%d", &num);

sum += num;

}

avg = sum / 5.0;

printf("这5个整数的平均值为:%fn", avg);

return 0;

}

4. 编写一个程序,从键盘输入一个字符串,判断该字符串是否为回文。

(回文即正着念和倒着念都一样,如“level”)

#include

#include

int main()

{

char str[100];

int i, len;

printf("请输入一个字符串:");

gets(str);

len = strlen(str);

for(i = 0; i < len / 2; i++)

{

if(str[i] != str[len - i - 1])

{

printf("该字符串不是回文。n");

return 0;

}

}

printf("该字符串是回文。n");

return 0;

}

5. 编写一个程序,从键盘输入一个整数,判断该数是否为素数。

(素数即只能被1和自身整除的数,如2、3、5、7等)

#include

int main()

{

int num, i;

printf("请输入一个整数:");

scanf("%d", &num);

if(num <= 1)

printf("不是素数。n");

else if(num == 2)

printf("是素数。n");

else

{

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

{

if(num % i == 0)

{

printf("不是素数。 return 0;

}

}

printf("是素数。n");

}

return 0;

}

n");


本文标签: 字符串 语句 输出 变量 字符