C语言网络教育试卷试题和答案2
c语言二级考试题及答案
c语言二级考试题及答案### C语言二级考试题及答案#### 单项选择题1. 题目:以下哪个选项是C语言中合法的变量名?- A. 2variable- B. variable-name- C. $variable- D. variable_name答案:B2. 题目:C语言中,以下哪个选项是正确的字符串字面量? - A. "Hello, World!"- B. 'Hello, World!'- C. "Hello World"- D. 'Hello World'答案:A3. 题目:在C语言中,以下哪个选项是正确的整型常量? - A. 0x1A- B. 1.2E3- C. 0123- D. 0b1010答案:A#### 填空题1. 题目:在C语言中,以下代码段的输出结果是____。
```cint a = 5;printf("%d", a++);```答案:52. 题目:以下代码段中,变量`b`的值是____。
```cint a = 10, b;b = a % 3;```答案:13. 题目:以下代码段中,变量`c`的值是____。
```cfloat a = 2.5, b = 4.5;int c = a + b;```答案:7#### 编程题1. 题目:编写一个C语言程序,计算并输出以下数列的前10项之和:1, 1/2, 1/3, 1/4, ...```c#include <stdio.h>int main() {double sum = 0.0;for (int i = 1; i <= 10; i++) {sum += 1.0 / i;}printf("Sum of the first 10 terms: %f\n", sum); return 0;}```2. 题目:编写一个C语言程序,实现两个整数的交换。
大学《C语言》试题及参考答案
(2)编写程序输出1-1000之间能够被5整除的所有整数,并求出这些整数的和输出。
(3) 从键盘输入10个正的整数,找出其中的素数输出。
答: #include#includeint f(int x){int i;for(i=2;i<=sqrt(x);i++)if(x%i==0) return 0;return 1}void main(){int a[10],i,n=0,j,t;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if( f(a[i]) n++;else a[i]=0;for(i=0;i<9;i++)for(j=0;j<9-i;j++)if( a[j]<A[J+1] ) {t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("共有%d个素数,它们是:",n);(4)编写程序打印下列图案答:#include "stdio.h"void main() {for (int i = 0;i <= 4;i++) {for (int j = 0;j <= i;j++) { printf("*");}printf("\n");}}(5)写一个函数计算一个字符串的长度,再写一个测试函数测试其功能。
不允许使用strlen函数答:#include "stdio.h"void convert(char *str){for (int i = 0; str[i] != '\0'; i++) {if (str[i] >= 'A' && str[i] <= 'Z') {str[i] = str[i] - 'A' + 'a';}}}int main(){char str[20] = "aZcdABxDEF123";convert(str);printf("%s\n", str);return 0;}(6)从键盘上任意输入50个整数存放在a数组中,找出a数组中所有偶数存放在数组b 中,并对b数组的值按降序排列。
全国计算机二级《C语言》考试题库与答案
全国计算机二级《C语言》考试题库与答案全国计算机二级《C语言》考试题库与答案在学习、工作中,我们都离不开试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。
什么样的试题才能有效帮助到我们呢?以下是店铺为大家收集的全国计算机二级《C语言》考试题库与答案,欢迎大家分享。
全国计算机二级《C语言》考试题库与答案篇1(1)下列关于栈叙述正确的是( )。
A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.栈底元素最先被删除(2)下列叙述中正确的是( )。
A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.以上说法都不正确某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A.3B.4C.6D.7软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( ):A.学生成绩管理系统B.c语言编译程序C.UNIX操作系统D.数据库管理系统(5)结构化程序所要求的基本结构不包括( )。
A.顺序结构B.GOT0跳转C.选择(分支)结构D.重复(循环)结构(6)下面描述中错误的是( )。
A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是( )。
A.1:1联系B.1:m联系C.m:1联系D.m:n联系(9)已知大写字母A的ASCIl码值是65,小写字母a的ASCIl码值是97。
以下不能将变量C中的大写字母转换为对应小写字母的语句是( )。
计算机二级c语言试题题库及答案
计算机二级c语言试题题库及答案一、单项选择题(每题2分,共20分)1. 在C语言中,用于定义变量的关键字是()。
A. defineB. varC. intD. let答案:C2. 下列关于C语言函数的描述,不正确的是()。
A. 函数可以没有参数B. 函数可以返回值C. 函数必须有返回值D. 函数可以嵌套定义答案:C3. 以下哪个选项不是C语言中的运算符()。
A. %B. &&C. ++D. :答案:D4. 在C语言中,用于定义一个结构体的关键字是()。
A. structB. unionC. enumD. typedef答案:A5. C语言中,用于表示逻辑与的运算符是()。
A. &&B. ||C. !D. =答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语句是:int array[10]; 其中array[0]的值默认为____。
答案:02. 如果一个函数的返回类型是int,那么在函数体中必须包含一条____语句。
答案:return3. 在C语言中,用于计算字符串长度的函数是____。
答案:strlen4. C语言中,用于将字符数组转换为字符串的字符是____。
答案:'\0'5. 当使用指针变量时,必须先对其进行____。
答案:初始化三、编程题(每题10分,共20分)1. 编写一个C语言函数,实现两个整数的交换。
```cvoid swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}```2. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```四、简答题(每题10分,共40分)1. 简述C语言中指针和数组的关系。
C语言 网络教育试卷和答案
5.对 break 语句的正确描述。( A )
A.break 语句在 while 语句中,立即终止执行 while 语句。
B.break 语句不能用于循环语句之外的语句。 C.break 语句与 continue 语句功能相同。
D.break 语句可以带参数,也可以不带。
6.在 C 语言中,下面那一个不是正确的概念( A ) A. 所有循环语句都要求至少要执行一次循环体。
A. *(ptr--)
B. x[6]
C. *(--ptr)
D. *(ptr++)
12.执行以下语句后的结果为( A )
enum weekday {sun,mon=3,tue,wed,thu};
enum weekday workday; workday = wed;
printf("%d\n",workday);
} 答案: c1=c,c2=abc
4. main( ) { printf("%d %x %o\n",125,125,125); printf("%d %x %o\n",045,045,045); printf("%d %x %o\n",0x32,0x32,0x32); }
答: 125 7d 175 37 25 45 50 32 62
电子科技大学网络教育考卷(A 卷)
(20 年至 20 学年度第 学期)
考试时间 年 月 日(120 分钟) 课程
C语言
教师签名_____
大题号 一 二 三 四 五 六 七 八 九 十 合 计
得分
一、单项选择题(每题 2 分,共 30 分) 1.以下描述正确的是( C )
长安大学网络教育《C语言程序设计》模拟试卷及参考答案
一、填空题(本题每空1分,共计15分)1.设int a = 2,b = 3;float x = 3.5,y =2.5;表达式(float)(a+b)/2+(int)x%(int)y的值为3.5 。
2.结构化程序设计的三种基本结构是顺序结构,选择结构,循环结构。
3.设a = 3 , b = 2 , c = 1 , 则!(a+b)+c-6&&c+b%2的值为 1 。
4.int a = 6 ; 若a *= 2+3,则a = 30 ;又若a /= a+a,则a = 0 ;又若a+=a-= a*=a,则a = 0 ;5.int a = 2 ,b ,c ; b = ++a ; c = (a++)+(b++) ; 则c = 6 ,a = 4 ,b = 46、判断char型变量ch是否为大写字母的正确表达式是:ch>=’A’&&ch<=’z’7、若a=1;b= 2;c=2; if(a<b<c) {t= a;a=b; b=t; c--;}则a= 2 ,b= 1 ,c= 1 ,二、选择题(本题有15个小题,每小题2分,共计30分,每题只有一个正确答案)1、C程序的执行是从(A)A)本程序的main函数开始,到main函数结束B)本程序文件的第-个函数开始,到本程序文件的最后-个函数结束C)本程序的main函数开始,到本程序文件的最后-个函数结束D)本程序文件的第-个函数开始,到本程序main函数结束2、若有说明:char *language[]={"FORTRAN","BASIC","PASCAL", "JA V A","C"};则以下不正确的叙述是(D)。
A)language+2表示字符串"PASCAL"的首地址B)*language[2」的值是字母PC)language是一个字符型指针数组,它包含5个元素,D)每个元素都是一个指向字符串变量的指针3、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为(B):A)7 B)8 C)6 D)24、下面四个选项中,均是不合法的用户标识符的选项是(C)A) A P_0 doB)float a0 _AC)b-a goto intD)-123 temp INT5、sizeof(float)是(B):A)一个双精度型表达式B) 一个整型表达式C) 一种函数调用D) 一个不合法的表达式6、设有说明:char w; int x; f1oat y; double z;则表达式w* x+z-y值的数据类型为(D):A)float B)char C)int D)double7、阅读下程序,若运行结果为如下形式,输入输出语句的正确内容是(B): main(){int x; float y; printf("enter x,y:")输入语句输出语句}输入形式enter x,y: 2 3.4输出形式x+y=5.40A)scanf("%d,%f",&x,&y);printf("\nx+y= %4.2f",x+y);B)scanf("%d%f",&x,&y );printf("\nx+y=%4.2f",x+y);C)scanf("%d%f",&x,&y); printf("\nx+y=%6.lf",x+y);D)scanf("%d%3.1f",&x,&y );printf("\nx+y=%4.2f",x+y);8、根据下面的走义,能打印出字母M的语句是(D)struct person{char name[9];int age;}struct person class[10]={"John",17,"Paul",19,"Mary",18,"adam",16 };A)printf("%c\n",class[3].name);B)printf("%c\n",class[3].name[1]);C)printf("%c\n",class[2].name[1]);D)printf("%c\n",class[2].name[0]);9、若有以下定义和语句:struct student{int age;int num;};struct student stu[3]={{1001,20},{1002,19},{1003,21}};main(){struct student *p;p=stu;...}则以下不正确的引用是(D)。
计算机二级c语言考试真题及答案详解
计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。
计算机二级c语言试题题库及答案
计算机二级c语言试题题库及答案一、选择题1. 在C语言中,下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个函数用于将字符串从源地址复制到目标地址?A. strcpyB. strncpyC. strcatD. strcmp答案:A3. C语言中,用于声明一个变量的关键字是:A. varB. varibleC. letD. int答案:D二、填空题1. 在C语言中,定义一个整型数组的语句是:________。
答案:int array_name[size];2. 若一个函数的返回类型为void,则该函数______。
答案:不返回任何值3. 在C语言中,使用________关键字可以定义一个全局变量。
答案:extern三、简答题1. 简述C语言中指针的作用。
答案:指针在C语言中用于存储变量的内存地址,通过指针可以间接访问和操作变量的值。
2. 解释C语言中的递归函数。
答案:递归函数是指函数在其定义中调用自身的函数。
递归函数通常用于解决可以分解为相似子问题的复杂问题。
四、编程题1. 编写一个C语言程序,实现两个整数的加法。
```c#include <stdio.h>int add(int a, int b) {return a + b;}int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = add(num1, num2);printf("Sum of %d and %d is %d.\n", num1, num2, sum); return 0;}```2. 编写一个C语言程序,实现字符串反转。
```c#include <stdio.h>#include <string.h>void reverseString(char* str) {int length = strlen(str);for (int i = 0; i < length / 2; i++) { char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str); return 0;}```。
计算机二级c语言试题库及答案
计算机二级c语言试题库及答案一、选择题1. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello, World!";B. char str[12] = "Hello, World!";C. char str = "Hello, World!";D. char str[] = {"Hello", "World!"};答案:A2. 下列哪个函数用于计算字符串的长度?A. strlen()B. strlength()C. length()D. size()答案:A3. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. structedC. structureD. type答案:A4. 以下哪个选项是正确的C语言函数声明?A. int function(int a, int b);B. int function(int, int);C. int function(int a; int b);D. int function(int a, int b)答案:A5. C语言中,以下哪个选项表示逻辑非运算符?A. &&B. ||C. !D. =答案:C二、填空题1. 在C语言中,使用________运算符可以将一个整数转换为一个字符。
答案:%c2. 以下代码段的输出结果是______。
```c#include <stdio.h>int main() {int a = 5;printf("%d", a++);return 0;}```答案:53. 以下代码段中,变量b的值是______。
```cint a = 10, b;b = a++;```答案:104. 在C语言中,使用________函数可以将浮点数转换为字符串。
华中师范大学网络教育学院《C语言程序设计》练习测试题及答案
《C语言程序设计》练习测试题及答案一、选择题(下列各题有四个选项,只有一个答案是正确的,请选出正确选项)1.一个C程序的执行是从。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束2.以下叙述正确的是。
A)在C程序中,main函数必须位于程序的最前面B)C程序的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误3.以下叙述不正确的是。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面4.C语言规定:在一个源程序中,main函数的位置。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后5.一个C语言程序是由。
A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成6.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为。
A)char<int<long int<=float<doubleB)char=int<long int<=float<doubleC)char<int<long int=float=doubleD)char=int=long int<=float<double7.若x、i、j和k都是int型变量,则执行下面表达式后x的值为。
x=(i=4,j=16,k=32)A)4 B)16 C)32 D)528.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是。
A)7 B)8 C)6 D)29.下列四组选项中,均不是C语言关键字的选项是。
C语言程序设计第2阶段练习题 江南大学机考题库及答案
江南大学网络教育第二阶段练习题考试科目:《C语言程序设计》第章至第章(总分100分)__________学习中心(教学点)批次:层次:专业:学号:身份证号:姓名:得分:一单选题 (共20题,总分值40分,下列选项中有且仅有一个选项符合题目要求,请在答题卡上正确填涂。
)1. 下述对C语言字符数组的描述中错误的是()。
(2 分)A. 字符数组可以存放字符串B. 字符数组的字符串可以整体输入、输出C. 可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D. 不可以用关系运算符对字符数组中的字符串进行比较2. 有以下程序void f(int v , int w){ int t;t=v;v=w;w=t;}main( ){ int x=1,y=3,z=2;if(x>y) f(x,y);else if(y>z) f(y,z);else f(x,z);printf(“%d,%d,%d\n”,x,y,z);}执行后输出结果是()。
(2 分)A. 1,2,3B. 3,1,2C. 1,3,2D. 2,3,13. 有语句char str1[10],str2[10]={"books"};则能将字符串books赋给数组str1的正确语句是()。
(2 分)A. str1={"Books"};B. strcpy(str1,str2);C. str1=str2;D. strcpy(str2,str1);4. 若有变量说明:char s,s1[20];执行语句:s="student";s1=s;正确的叙述是()。
(2 分)A. 二个语句都不正确B. s所指向的字符串和s1的值都是"student"C. 第一个语句正确,而第二个语句不正确D. 第二个语句正确,而第一个语句不正确5. C语言的编译系统对宏命令是()时候处理的。
C语言网络教育试卷试题和答案2
} else printf("\nX 不能被 7 整除"); } else printf("\nX 不能被 4 整除"); return 0; }
int n=0,m=0,k=0,o=0; //外部变量 void test(char str[]); main() {
}
4. #include <stdio.h>
void main()
{ int a=2;
switch(a)
{
case 2:
case 3:a++;
case 4:a++;
default:a+=10;
}
printf("a=%d\n",a);
}
答案:a=14
5.分析下面程序的运行结果。 #include <stdio.h> int f(int a); int main() { int f(int); int a=5,i;
D.x 为 1234567,y 为 0
4.对于 for(表达式 1;表达式 2 ;表达式 3) 语句的正确描述( A.表达式2省略,循环不执行。
B)
B.表达式3省略,可在循环体中修改循环控制变量,以保证正常退出。
C.三个表达式均不能省略。 D.三个表达式均不能省略。但分号可以省略。 5.以下叙述中正确的是( B )。
则( D ) A.运行后将输出 student ;
C.运行后将输出 b;
B.运行后将输出 a
D.编译出错
7.当数组作函数参数时,选出不正确的描述。( D ) A.实参数组与形参数组类型应一致。 B.数组元素做函数实参时,同变量做实参一样是参数传值。
电大C语言试题及答案
欢迎共阅电大C语言试题及答案一、第一章单选题1.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为。
答案:A2.C++语言中的每条基本语句以________作为结束符。
答案:;(或分号)3.C++语言中的每条复合语句以________作为结束符。
答案:(或右花括号)4.在C++每个程序行的后面或单独一行的开始使用注释的标记符为__________。
答案://5.单行或多行注释的开始标记符为__________、结束标记符为__________。
答案:/*、*/6.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则2.设x和y均为bool量,则x || y为假的条件是。
CA. 它们均为真B. 其中一个为真C. 它们均为假D. 其中一个为假3.设有语句“int a 12; a+ a*a;”,则执行结束后,a的值为。
CA. 12B. 144C. 156D. 2884.x 0 && x 10的相反表达式为()。
AA. x 0 || x 10B. x 0 && x 10C. x 0 || x 10D. x 0 && x 105.x 0 || y 5的相反表达式为()。
BC. 0~19D. 0~20四、第二章填空题1.十进制数25表示成符合C++语言规则的八进制数为________。
答案:0312.十进制数25表示成符合C++语言规则的十六进制数为________。
答案:0x193.在c++语言中,操纵符________表示输出一个换行符。
答案:endl4.执行“cout char 'A'+2 endl;”语句后得到的输出结果为________。
答案:C5.已知'A'~'Z'的ASCII码为65~90,当执行“int x 'C'+5;”语句后x的值为________。
答案:72__________。
c语言远程教育测试题及答案
c语言远程教育测试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. varB. defineC. letD. int答案:D2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. <=D. ==答案:B3. C语言中,用于定义函数的关键字是:A. funcB. functionC. defD. void答案:B4. 在C语言中,以下哪个是正确的字符串定义方式?A. char str[] = "Hello";B. char str = "Hello";C. char str[] = 'Hello';D. char str = 'Hello';答案:A5. C语言中,用于声明一个函数的关键字是:A. declareB. defineC. defD. function答案:B6. 下列哪个选项不是C语言中的控制结构?A. ifB. switchC. forD. repeat答案:D7. C语言中,用于跳过当前循环的剩余部分,直接开始下一次循环的关键字是:A. continueB. breakC. exitD. return答案:A8. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. typedefD. enum答案:A9. 在C语言中,以下哪个选项不是合法的数组定义?A. int arr[10];B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2, 3};D. int arr[10] = {1, 2, 3};答案:C10. C语言中,用于声明一个指针的关键字是:A. pointerB. ptrC. refD. *答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个基本的数据类型是________。
(完整版)C语言考试题库及答案
(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。
()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。
()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。
()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。
答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。
答案:911. 在C语言中,用于动态分配内存的函数是______。
答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。
答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。
答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。
答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。
c语言考试题及答案以及解析
c语言考试题及答案以及解析一、选择题1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A解析:在C语言中,关键字是保留的词汇,用于表示特定的语法结构。
int是C语言中用于声明整型变量的关键字。
2. C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C解析:在C语言中,乘法运算符是星号(*),用于计算两个数的乘积。
二、填空题1. 在C语言中,以下代码片段的输出结果是:```cint main() {int a = 5;printf("%d", a);return 0;}```输出结果为:_________答案:5解析:代码中的printf函数用于输出变量a的值,a被初始化为5,因此输出结果为5。
2. 下列代码段中,变量b的值是多少?```cint main() {int a = 10, b;b = a + 5;printf("%d", b);return 0;}```变量b的值为:_________答案:15解析:变量b被赋值为变量a加上5,由于a的值为10,所以b的值为15。
三、简答题1. 简述C语言中的数组是什么,并给出一个数组的声明和初始化的例子。
答案:C语言中的数组是一种数据结构,用于存储相同类型的多个元素。
数组的声明需要指定元素的类型和数组的长度。
数组的初始化可以在声明时完成。
解析:例如,声明一个整型数组并初始化:```cint numbers[5] = {1, 2, 3, 4, 5};```2. 解释C语言中的函数是什么,并给出一个简单函数的定义和调用的例子。
答案:C语言中的函数是一段具有特定功能的代码块,可以接收参数,并返回一个值。
函数的定义包括函数的返回类型、名称、参数列表和函数体。
函数的调用是使用函数名称和必要的参数来执行函数。
解析:例如,定义一个函数来计算两个数的和,并调用它:```cint add(int x, int y) {return x + y;}int main() {int result = add(5, 10);printf("%d", result);return 0;}```四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
二级c语言试题及答案
二级c语言试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的叙述中,错误的是()。
A. C语言是一种高级语言B. C语言可以直接在计算机上运行C. C语言具有结构化的特点D. C语言具有丰富的数据类型答案:B2. 在C语言中,用于定义变量的关键字是()。
A. varB. defineC. intD. let答案:C3. 下列选项中,哪个不是C语言中的运算符?()A. %B. &&C. ::D. +=答案:C4. C语言中,用于定义数组的关键字是()。
A. arrayB. listC. vectorD. int答案:D5. 下列关于C语言函数的叙述中,正确的是()。
A. 函数可以没有返回值B. 函数必须有返回值C. 函数的返回值类型不能为voidD. 函数的参数类型必须与返回值类型一致答案:A6. 在C语言中,用于定义结构体的关键字是()。
A. structB. classC. unionD. typedef答案:A7. C语言中,用于声明指针的符号是()。
A. &B. %C. *D. #答案:C8. 下列关于C语言文件操作的叙述中,错误的是()。
A. 文件操作需要包含头文件stdio.hB. 文件指针类型为FILE*C. 文件打开使用fopen函数D. 文件关闭使用fclose函数答案:A9. C语言中,用于实现循环的关键字是()。
A. loopB. repeatC. forD. do答案:C10. 在C语言中,用于定义枚举类型的关键字是()。
A. enumB. typedefC. unionD. struct答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义单精度浮点数的关键字是________。
答案:float2. C语言中,用于定义双精度浮点数的关键字是________。
答案:double3. C语言中,用于定义字符型变量的关键字是________。
网课c语言试题及答案
网课c语言试题及答案1. 单选题:以下哪个关键字用于定义C语言中的结构体?A. structB. unionC. enumD. typedef答案:A2. 判断题:在C语言中,所有的变量都必须在函数的开始处声明。
答案:错误3. 填空题:在C语言中,使用________关键字可以定义一个指针变量。
答案:指针4. 简答题:请描述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被看作指向数组首元素的指针。
数组和指针紧密相关,可以通过指针访问数组元素。
5. 编程题:编写一个C语言程序,计算并输出100以内所有偶数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```6. 多选题:以下哪些是C语言中的合法数据类型?A. intB. floatC. boolD. double答案:A, B, D7. 计算题:给定一个整数数组{5, 10, 15, 20, 25},请计算数组中所有元素的总和。
答案:758. 改错题:以下C语言代码中存在一个错误,请找出并修正。
```cint main() {int a = 10;printf("%d", a++);return 0;}```答案:应将 `printf("%d", a++);` 更正为 `printf("%d", a);` 以避免在打印后立即递增变量。
9. 简答题:解释C语言中函数原型和函数定义的区别。
答案:函数原型是函数的声明,它告诉编译器函数的返回类型、名称和参数类型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
答:
#include <stdio.h>
void main()
{ int i,j,k,n;
printf("Narcissus number are: ");
for(n=100;n<1000;n++)
{ i=n/100;
j=n/10-i*10;
k=n%10;
} }
五、编程题 (每题 10 分,共 20 分) 1. 请编制程序实现:判断一个数能否同时被 4 和 7 整除。
答:算法如下: #include <stdio.h> int main() { int x;
printf("\n 为 X 输入值"); scanf("%d", &x); if (x%4==0) { if(x%7==0)
A.循环语句嵌套必须是同类型的语句
B.循环语句嵌套可以是同类型的语句,也可以不同类型 C.do_while 循环语句和 while 循环语句的程序执行方式都是相同的。 D.循环体中不能再有循环语句
6.有下面的程序段:
char a[ 3 ], b[ ] =”student”;
a=b;
printf (“ %s”,a);
int i,j,t; for (i=0; i<10; i++) {
scanf("%d", &a[i]); } for(j=0;j<9;j++) { for(i=0;i<9-j;i++)
{ if (a[i] > a[i+1]) { t = a[i]; a[i] = a[i+1]; a[i+1] = t; }
8.在 C 语言中,函数返回值的类型最终取决于( A
)。
A.函数定义时在函数首部所说明的函数类型
B.return 语句中表达式值的类型
C.调用函数时主调函数所传递的实参类型
D.函数定义时形参的类型
9.若有说明 int (*p)[3]; 则以下正确的描述( B )
A. p 是一个指针数组。 B. p 是一个指针,它只能指向一个包含3个 int 类型元素的数组。 C. p 是一个指针,它可以指向一个一维数组中的任意元素。
if(n==
i*i*i+j*j*j+k*k*k
)
printf("%5d",n);
}
printf("\n");
} 2. 将原文件 file1.c 的内容读出并显示, 同时将其内容写入 file2.c 文件中。
#include<stdio.h> main() { FILE *fp1,*fp2;
fp1=fopen("file1.c", "r" ); fp2=fopen("file2.c","w"); while(!feof(fp1))
putchar(getc(fp1)); rewind(fp1); while(!feof(fp1))
putc( getc(fp1) ,fp2);
2
fclose(fp1);fclose(fp2); } 3.用冒泡法对 10 个整数排序。
#include <stdio.h> int main() { int a[10];
char a[80]; printf("input string:"); gets( a); test(a); printf("\n 字母数=%d 数字数=%d 空格数=%d 其他字符数%d\n",n,m,k,o); return 0; } void test(str) char str[]; { int i;
while(i<=10) { if (!(i%2)) printf("%d,",i);
i++; } } 答案:2,4,6,8,10 3.分析下面程序的运行结果。 #include<stdio.h> main() {char s[]="456789"; s[4]='\0'; printf("%s\n",s); } 答案:4567
姓名__________________ 专业名称__________________ 班号________________学号__________________教学中心_________________ …………………… …… … … … … …密………………… …… … … … … ……封……………… …… … … …线… … … …… … … ……………………
for(i=0;str[i]!= '\0';i++) { if(str[i]>='a'&&str[i]<='z'|| str[i]>='A'&&str[i]<='Z')
n++; //n 为字母数 else if( str[i]>='0'&&str[i]<='9')
m++; //m 为数字 else if(str[i]==' ')
(× )8. 在 C 语言程序中,每个函数必须要有且只能有一个 return 语句。
(√ )9. 枚举类型变量只能取枚举定义中的枚举常量。 (√ )10. 联合类型是同一个存储空间,可以被几个不同数据类型的分量成员共享使用。
三、分析程序给出运行结果(每题 5 分,共 25 分) 1.执行下面程序之后,m 的值为多少。
A. B
B. b-a
C. float
D. _123
M_0
goto
2ab
temp
while
int
_A
INT
2.有输入语句:scanf(“a=%d, b=%d, c=%d”, &a, &b, &c);为使变量 a,b,c 的值分别为 1,3,2,从键盘上输
入数据的正确形式应当是( B
)
A.132 〈回车〉
{ printf("\nX 能被 4 和 7 整除:X="); printf("%-5d\n",x);
} else printf("\nX 不能被 7 整除"); } else printf("\nX 不能被 4 整除"); return 0; }
int n=0,m=0,k=0,o=0; //外部变量 void test(char str[]); main() {
电子科技大学网络教育考卷(A 卷)
(20 年至 20 学年度第 学期)
考试时间 年 月 日(120 分钟) 课程
C语言
教师签名_____
大题号 一 二 三 四 五 六 七 八 九 十 合 计
得分
一、单项选择题(每题 2 分,共 30 分)
1.下面的四个选项中,均不是合法的用户标识符的选项是( B )
B.a=1,b=3,c=2〈回车〉
C.a=1 b=3 c=a <回车>
D.1,3,2 〈回车〉
3.如果输入信息为:1234567 则执行语句:scanf("%2d%2d",&x,&y); 之后,x,y 的值为( A )
A. x 为 12,y 为 34
B. x 为 2,y 为 3
C. x 为 12,y 为 67
C.break 语句只能用在循环体内和 switch 语句体中。
D.在循环内使用 break 语句和 continue 语句的作用相同。
二、判断题(每题 10 分,共 10 分) ( × )1.若有代数式 x2÷(3x+5), 则正确的 C 语言表达式为:x*x/3*x+5。 ( √ )2.开发一个 c 语言的源程序要经过的四个阶段编辑、编译、连接,程序运行。 ( × )3.int i=5, j, k; j=i++; k=i; 则 k 的值为 5。 ( ×)4.已知:int s[][3]={1,2,3,4,5,6}; 此时数组元素 s[1][1]的值为 1。 ( √ )5.字符串“hello”占用内存 6 字节。 ( √ )6. C 语言中,注释可以出现在源程序中空格可以出现的任何位置。 ( ×)7. 强制类型转换,如(double)x,只改变原变量的类型,而不改变其值。
for(i=0;i<3;i++) {
printf("%d ", f(a)); } return 0; } int f(int a) { auto int b=0; static int c=3; b = b+1; c = c+1; return (a+b+c); } 答案:10 11 12
四、完善程序填空题(每题 5 分,共 15 分) 1. 输出所有的“水仙花数”,所谓“水仙花数”是指一个 3 位整数,其各位数字立方和等于该数本身。例如,
D.x 为 1234567,y 为 0
4.对于 for(表达式 1;表达式 2 ;表达式 3) 语句的正确描述( A.表达式2省略,循环不执行。
B)
B.表达式3省略,可在循环体中修改循环控制变量,以保证正常退出。
C.三个表达式均不能省略。 D.三个表达式均不能省略。但分号可以省略。 5.以下叙述中正确的是( B )。
#include<stdio.h> main()