C程序设计基础测试题(一)资料
- 格式:doc
- 大小:29.00 KB
- 文档页数:21
福建师范大学C语言程序设计考试题系别 _______ 班级 _______ 姓名_________ 学号________ 得分__________一、选择题(本大题共40个选项,每个选择项1.5分,共60分)1.在C语言中,合法的字符常数是【1】A)‘程序设计’ B)“程序设计”C)c D)‘\\’2.在C语言中,以下不正确的八进制或不正确的十六进制数是【2】A)090 B)0xABC)0xla D)-0163.执行int x=2,y=3;后表达式x=(y==3)的值是【3】A)0 B)1C)2 D)34.执行语句int a,b,c; a=(b=c=3, c++, b+=c);则a的值是【4】A) 3 B) 4C) 7 D) 115.在循环结构的循环体中执行break语句,其作用是【5】A) 结束本次循环,进行下次循环B) 继续执行break语句之后的循环体中各语句C) 跳出该循环体,提前结束循环D) 终止程序运行【6】main(){char s[]=”\’Address\’”;printf(%d\n”, strlen(s));}A) 9 B) 10C) 11 D) 12【7】main(){int a[]={2, 4, 6, 8, 10}, y=1, x;for(x=0; x<3; x++) y+=a[x+1];printf(“%d\n”, y);}A) 17 B) 18C) 19 D) 208.已定义char x[8]; int i;为了给x数组赋值,以下正确的语句是【8】A) x[8]=”Turbo C”; B) x=”Turbo C”;C) x[]=”Turbo C”; D) for(i=0; i<7; i++) x[i]=getchar();9.设int a[][4]={0, 0};则以下错误的描述是【9】A) 数组a的每个元素都可得到初值0B) 二维数组a的第一维大小为1C) 数组a的行数为1D) 只有元素a[0][0]和a[0][1]可得到初值0,其余元素得不到初值0 【10】fun3(int x){static int a=3;a+=x;return a;}main(){int k=2, m=1, n;n=fun3(k);n=fun3(m);printf(“%d\n”, n);}A) 3 B) 4C) 6 D) 911.以下四个运算符,按优先级由高到低的排列顺序是【11】A) ++ % += > B) % ++ > +=C) % += > ++ D) ++ % > +=【12】A) 在函数外部定义的变量是全局变量B) 在函数内部定义的变量是局部变量C) 函数的形参是局部变量D) 局部变量不能与全局变量同名13.“文件包含”预处理语句的使用形式中,当#include后面的文件名用“”括起时,寻找被包含的文件的方式为【13】A) 直接按系统设定的标准方式搜索目录B) 先在源程序所在目录搜索,再按系统设定的标准方式搜索C) 仅仅搜索源程序所在的目录D) 仅仅搜索当前目录14.设有语句int(*p)();则p是一个【14】A) 指向一维整型数组的指针变量B) 指针函数,该函数的返回值为指向整型变量的指针C) 指向函数的指针变量,该函数的返回值为整型D) 数组指针,它的每个元素都是一个可以指向整型变量的指针变量15.若有typedef float AR[5];AR a;则以下叙述正确的是【15】A) a是一个新类型名B) AR是一个实型数组C) AR是一个实型变量D) a是一个实型数组【16】A)整型、实型、逻辑型B)整型、实型、字符型、逻辑型C)整型、字符型、逻辑型D)整型、实型、字符型17.在C语言中,变量所分配的内存空间大小【17】A)均为一个字节 B)由用户自己定义C)由变量的类型决定 D)是任意的18.在C语言中,合法的整型常数是【18】A)-0x123 B)3.14159 C19.下列各变量均为整型,选项中不正确的C语言赋值语句是【19】A)i+=++i; B)i=j==k;C)i=j+=i; D)i=j+1=k;≤y≤z可用C语言的表达式表示为【20】A)(x<=y)&&(y<=z) B)(x<=y)and(y<=z)C)(x<=y<=z) D)(x<=y)&(y<z)21.若定义float a;现要从键盘输入a数据,其整数位为3位,小数位为2位,则选用【21】A)scanf(“%6f”,&a); B)scanf(“%”,a);C)scanf(“%”,&a); D)scanf(“%f”,a);【22】unsigned a=0356,b;b=~a|a<<2+1;printf(“%x\n”,b);A)ffba B)ff71 C)fff8 D)fc0223.要使以下程序的输出结果为4,则a和b应满足的条件是【23】main(){int s,t,a,b;scanf(“%d%d”,&a,&b);s=t=1;if(a>0) s += 1;if(a>b) t= s + t;elseif(a==b) t=5;else t=2*s;printf(“%d\n”,t);}A)a>0并且a<b B)a<0并且a<bC)a>0并且a>b D)a<0并且a<b24.若int i;则以下循环语句的循环执行次数是【24】for (i=2;i==0;) printf(“%d”,i--);A)无限次 B)0次C)1次 D)2次【25】main(){int i;for(i=100;i<200;i++){if(i%5==0) continue;printf(“%d\n”,i);break;}}A)100 B)101C)无限循环 D)无输出结果【26】int i=1,a[]={1,5,10,9,13,7};while(a[i]<=10) a[i++]+=2;for (i=0;i<6;i++) printf(“%d”,a[i]);A)2 7 12 11 13 9 B)1 7 12 11 13 7C)1 7 12 11 13 9 D)1 7 12 9 13 7“abcde”赋初值给字符数组,不正确的语句是【27】A)char s[]=“abcde”; B)char s[]={’a’, ’b’,’c’,’d’,’e’,’\0’};C)char s[]={“abcde”}; D)char s[5]= “abcde”;28.若变量c为char类型,能正确判断出c为小写字母的表达式是【28】A) 'a'<=c<= 'z' B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c) D) (c>= 'a')&&(c<= 'z')【29】void fun(int *x, int *y){ printf("%d %d", *x, *y); *x=3; *y=4;}main(){ int x=1,y=2;fun(&y,&x);printf("%d %d",x, y);}A) 2 1 4 3 B) 1 2 1 2 C) 1 2 3 4 D) 2 1 1 2【30】main(){ int i, k, a[10], p[3];k=5;for (i=0;i<10;i++) a[i ]=i;for (i=0;i<3;i++) p[i ]=a[i *(i+1)];for (i=0;i<3;i++) k+=p[i] *2;printf("%d\n",k);}A) 20 B) 21 C) 22 D)2331.当执行下面的程序时,如果输入ABC,则输出结果是【31】main(){ char ss[10]="1,2,3,4,5";gets(ss); strcat(ss, "6789"); printf("%s\n",ss);}A) ABC6789 B) ABC67 C【32】A) int a[2][3]={0}; B) int a[][3]={1,2,3,4,5};C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[2][3]={{1},{3,4,5}};33.若int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是【33】A) 2 B) 3 C) 4 D)无确定值34.下面程序段的运行结果是【34】int a[2][3]={1,2,3},i,j;for(i=0;i<2;i++)for(j=0;j<3;j++){a[i][j]=a[i*j%2][j]+a[i][(i+j)%3];printf(“%d,”,a[i][j]);}A) 2,4,6,2,0,8, B) 1,2,3,0,0,0,C) 1,2,3,2,0,6, D) 2,4,6,2,0,6,35.下面程序段的运行结果是【35】int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%d\n”,a[2][1]);A) 2 B) 4 C) 7 D)836.定义一个结构体变量时,系统分配给它的内存大小是【36】A)各成员所需内存量的总和B)成员中占内存量最大者所需内存容量C)结构中第一个成员所需内存容量D)结构中最后一个成员所需内存容量37.若typedef char STRING[255];STRING s;,则s是【37】A)字符指针数组变量B)字符数组变量C)字符变量D)字符指针变量38.若已定义:int *p,a;,则语句p=&a;中的运算符“&”的含义是【38】A) 位与运算B) 逻辑与运算C) 取指针内容D)取变量地址39.若有定义char *p,ch;则不能正确赋值的语句组是【39】A)p=&ch;scanf(“%c”,p);B)p=(char *)malloc(1); *p=getchar();C)*p=getchar();p=&ch;D)p=&ch;*p=getchar();40.下面程序段的运行结果是【40】char s[]=“ABC”;int i;for(i=0;i<3;i++) printf(“%s”,&s[i]);A) ABC B) ABCABCABC C) AABABC D)ABCBCC1.下列叙述中正确的是A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言所有函数都是外部函数0.5 C) 2L D) '\72'3.下列选项中,合法的C语言关键字是A) V AR B) cher C) integer D) default4.设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A) 不定值B) 4 C) 3 D) 15.下面程序段的运行结果是【5】float y=0.0,a[]={2.0,4.0,6.0,8.0,10.0},*p;int i;p=&a[1];fo r(i=0;i<3;i++) y+=*(p+i);printf(“%f\n”,y);A) 12.0000 B) 28.0000 C) 20.0000 D) 18.00006.下面程序段的运行结果是【6】char c[]={‘a’,‘b’,‘\0’,‘c’,‘\0’};printf(“%s\n”,c);A) ab c B) ‘a’‘b’C) abc D) ab7.下面程序段的运行结果是【7】char s[10],*sp=“HELLO”;strcpy(s,sp);s[0]=‘h’;s[6]=‘!’;puts(s);A) hELLO B) HELLO C) hHELLO! D) h!8.若有定义int a[3][5],i,j;(且0≤i<3,0≤j<5),则a[i][j]的地址不正确表示是【8】A) &a[i][j] B) a[i]+jC) *(a+i)+j D) *(*(a+i)+j)9.若有定义int *p[4];,则标识符p是一个【9】A) 变量的指针变量B) 指向函数的指针变量C) 指向有四个整数元素的一维数组的指针变量D)指针数组名,有四个元素,每个元素均为一个指向整型变量的指针10.若有定义char *language[]={“FORTRAN”, “BASIC”,“PASCAL”,“JA V A”, “C”};则language[2]的值是【10】A) 一个字符B) 一个地址C) 一个字符串D) 不确定11.C语言规定,函数返回值的类型由【11】所决定。
2016年五年制大专专转本C程序设计模拟考试(一)(数据类型、顺序结构、选择结构、循环结构)一、选择题(1*20+2+30=80分)*1、结构化程序设计所规定的三种基本控制结构是______。
A、输入、处理、输出B、树形、网形、环形C、顺序、选择、循环D、主程序、子程序、函数*2、以下选项中合法的用户标识符是______。
A、longB、_2TestC、3DmaxD、A.dat*3、与数学式子3乘以x的n次方/(2x-1)对应的C语言表达式是______。
A、3*x^n/(2*x-1)B、3*x**n/(2*x-1)C、3*pow(x,n)*(1/(2*x-1))D、3*pow(n,x)/(2*x-1)*4、设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是______。
A、printf("x=%d\n",x); B、printf("x=%ld\n",x);C、printf("x=%8dL\n",x);D、printf("x=%LD\n",x);*5、已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是______。
A、6B、0C、2D、1*6、以下选项中,与k=n++完全等价的表达式是_______。
A、k=n,n=n+1B、n=n+1,k=nC、k=++nD、k+=n+1 *7、以下叙述中正确的是______。
A、构成C程序的基本单位是函数B、可以在一个函数中定义另一个函数C、main()函数必须放在其它函数之前D、所有被调用的函数一定要在调用之前进行定义*8、下列叙述中正确的是______。
A、C语言中既有逻辑类型也有集合类型B、C语言中没有逻辑类型但有集合类型C、C语言中有逻辑类型但没有集合类型D、C语言中既没有逻辑类型也没有集合类型*9、若有以下程序段(n所赋的是八进制数)。
C语言基础一:1.下列四组选项中,均不是C语言关健字的选项是( A )。
A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。
A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x<<02>>B>>23.下面四个选项中,均是不合法的转义符的选项是( B )。
A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。
A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。
A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。
A) swithB) cherC) Case).Default7.下列标识符组中,合法的用户标识符为AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。
A) true B) 整型值0 C)非另整型值D) T9若有以下定义char s='\092';则该语句( B )A)使s的值包含一个字符B)定义不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。
C语言程序设计_习题大全(含答案) C语言程序设计_习题大全(含答案)C语言程序设计是计算机科学与技术领域中非常重要的一门课程,对于学习和掌握程序设计的基本原理和方法具有重要意义。
在学习这门课程过程中,习题的练习和掌握是至关重要的一环。
本文将向大家介绍一份包含答案的C语言程序设计习题大全,帮助读者拓宽思路,加深对C语言程序设计的理解。
第一章:基础知识练习习题1:请编写一个C程序,输出"Hello, World!"。
答案:```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```习题2:请编写一个C程序,将两个整数相加并输出结果。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("%d + %d = %d\n", num1, num2, sum);return 0;}```第二章:条件语句练习习题3:请编写一个C程序,判断某年份是否为闰年。
答案:```c#include <stdio.h>int main() {int year;printf("请输入年份:");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {printf("%d年是闰年\n", year);} else {printf("%d年不是闰年\n", year);}return 0;}```习题4:请编写一个C程序,判断用户输入的整数是否为正数、负数或者零。
《C语言程序设计基础》考试试卷计算机电气类专业一年级 1 学期期末考试试题A卷时间100分钟,考试形式:闭卷总分100分,占总评成绩70 %注:此页不作答题纸,请将答案写在答题纸上一、判断题(每小题1分,共15分)1.标准C中,只有数值型数据才能进行4则混合运算。
2.标准C中,_a是合法的自定义标识符。
3.有定义:float f;表达式f+=(int)3.6%2”不符合C语言语法。
4.标准C中,逻辑运算的结果只有是1表示满足条件,而结果是0表示不满足条件。
5.C语言程序中要求被调用函数在调用函数中能被调用必须要在调用函数中进行声明。
6.以下运算符排列顺序满足按照优先级从高到低的排列:‘&&’、‘!’、‘==’、‘-’。
7.语句for(;;);是非法的。
8.在C语言程序中可以由多个源文件构成,每个源文件都可以有自己的main()函数。
9.while和do-while的主要区别是后者至少无条件执行一次。
10.数组名代表数组的首地址是常量,所以将实参数组名表示地址传给形参数组名是错误的。
11.当函数没有返回值类型时,表示函数类型为void。
12.C语言中,指针变量作函数参数时,它们不是采取单向值传递的方式。
13.一个函数中只允许有一条return语句。
14.在C语言中,如果没有说明变量的存储类型是auto类型的。
15.由于指针中所存放的地址都是整数,所以整型指针和浮点型指针可以相互赋值。
二、填空题(每空1分,共15分)1.若a=4;b=5,c=6;则表达式c==(b=-a); 中c的值是(1)。
2.计算表达式的值:4&&-4的值:(2);设int a=3,b=4,c=5,则表达式a||b+c&&b==c的值:(3);设x=2.5, a=7, y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值:(4);设a=12,则表达式a*=a/5的值:(5);3.若int x = 4,y = 6,z = 0;有循环while(x = y) {z ++;y--;}则循环语句执行完后,z值为(6)。
程序设计基础试题(附答案)程序设计基础试题(附答案)程序设计是计算机科学领域中的一门重要学科,它涉及到计算机软件的开发过程以及解决问题的方法和技巧。
掌握程序设计基础知识对于想要成为一名优秀的程序员来说至关重要。
本文将给出一些程序设计基础试题,并附上详细的答案解析,希望能够对初学者或者想要提升编程水平的人有所帮助。
题目一:设计一个程序,输入一个整数n,输出1到n之间的所有偶数。
解答:```pythonn = int(input("请输入一个整数:"))for i in range(1, n+1):if i % 2 == 0:print(i)```题目二:编写一个函数,判断一个字符串是否是回文串(正着读和反着读都一样的字符串)。
解答:```pythondef is_palindrome(s):if s == s[::-1]:return Trueelse:return Falsestring = input("请输入一个字符串:")if is_palindrome(string):print("是回文串")else:print("不是回文串")```题目三:编写一个程序,统计一个字符串中每个字符出现的次数。
解答:```pythonstring = input("请输入一个字符串:")char_count = {}for char in string:if char in char_count:char_count[char] += 1else:char_count[char] = 1for char, count in char_count.items():print(f"{char}: {count}")```题目四:设计一个程序,计算斐波那契数列的第n项。
解答:```pythondef fibonacci(n):if n <= 0:return Noneelif n == 1 or n == 2:return 1else:a, b = 1, 1for _ in range(n - 2):a, b = b, a + breturn bn = int(input("请输入一个整数:"))result = fibonacci(n)if result is None:print("请输入一个正整数!")else:print(f"斐波那契数列的第{n}项为:{result}") ```题目五:编写一个函数,判断一个正整数是否是素数。
第一章测试1【单选题】(10分)以下叙述中正确的是()。
A.用C程序实现的算法必须要有输入和输出操作B.用C程序实现的算法可以没有输入但必须要有输出C.用C程序实现的算法可以既没有输入也没有输出D.用C程序实现的算法可以没有输出但必须要有输入2【单选题】(10分)以下不能定义为用户标识符的是()。
A._scanfB.MainC._10D.printf3【单选题】(10分)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
A.小写字母B.数字字符C.连接符D.下划线4【单选题】(10分)以下C语言用户标识符中,不合法的是()。
A.a_bB._1C.AaBcD.a--b5【单选题】(10分)结构化程序由三种基本结构组成,三种基本结构组成的算法()。
A.可以完成任何复杂的任务B.只能完成一些简单的任务C.只能完成符合结构化的任务D.只能完成部分复杂的任务6【单选题】(10分)以下叙述中正确的是()。
A.可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行B.C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束C.C语言程序将从源程序中第一个函数开始执行D.main可作为用户标识符,用以命名任意一个函数作为主函数7【单选题】(10分)C语言源程序名的后缀是()。
A..exeB..cC..cp pD..obj8【单选题】(10分)以下叙述中的是()。
A.C程序在书写时,有严格的缩进要求,否则不能编译通过B.一个C程序中可以包含多个不同名的函数C.一个C程序只能有一个主函数D.C程序的主函数必须用main作为函数名9【单选题】(10分)下列关于C语言用户标识符的叙述中正确的是()。
A.用户标识符中可以出现下划线和中划线(减号)B.用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头C.用户标识符中可以出现下划线,但不能放在用户标识符的开头D.用户标识符中不可以出现中划线,但可以出现下划线10【单选题】(10分)下列4个选项中,()是合法的用户自定义标识符。
c语言分支程序设计测试题目及答案1. 单选题:以下哪个关键字用于C语言中的条件语句?A. ifB. elseC. whileD. for答案:A2. 判断题:以下代码段能否正确判断一个整数是否为偶数?```cint num = 10;if (num % 2 == 0)printf("偶数");elseprintf("奇数");```正确错误答案:正确3. 填空题:在C语言中,以下代码段的功能是____。
```cint a = 5;if (a > 0)printf("正数");else if (a == 0)printf("零");elseprintf("负数");```答案:判断变量a的正负4. 简答题:请解释C语言中的三元运算符的用法。
答案:C语言中的三元运算符是 `条件表达式 ? 表达式1 : 表达式2`,其中条件表达式为真时,执行表达式1,否则执行表达式2。
5. 编程题:编写一个C语言程序,判断用户输入的年份是否为闰年。
```c#include <stdio.h>int main() {int year;printf("请输入一个年份:");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) printf("%d是闰年。
\n", year);elseprintf("%d不是闰年。
\n", year);return 0;}```6. 多选题:以下哪些条件可以使得if语句执行其内部代码块?A. 条件表达式为真B. 条件表达式为假C. 条件表达式返回非零值D. 条件表达式返回零值答案:AC7. 改错题:以下代码段中存在错误,请指出并修改。
C 语言程序设计试卷 ,C++语言程序设计试题及答案一、单项选择题(每题1分,共20分)1.C语言规定:在一个源程序中,main函数的位置( C )。
A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后2. 下面四个选项中,均是合法浮点数的选项是( B )。
A.+1e+1 5e-9.4 03e2B.-.60 12e-4 -8e5C.123e 1.2e-.4 +2e-1D.-e3 .8e-4 5.e-03. 若a=-14,b=3,则条件表达式 a<b? a:b+1的值为(A )。
A.-14B. -13C. 3D. 44. 已知:int n,i=1,j=2;执行语句n=i<j?i++:j++;则i和j的值是( c ).A.1,2B. 1,3C. 2,2D. 2,35. 为了判断两个字符串s1和s2是否相等,应当使用( D )A.if (s1==s2)B. if(s1=s2)C. if (strcmp(s1,s2))D. if (strcmp(s1,s2)==0)6. 以下正确的描述是( B )。
A.函数的定义可以嵌套,但函数的调用不可以嵌套。
B.函数的定义不可以嵌套,但函数的调用可以嵌套。
C.函数的定义和函数的调用均不可以嵌套。
D.函数的定义和函数的调用均可以嵌套。
7. 在C语言中,下面对函数不正确的描述是( D)。
A.当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。
B.允许函数递归调用。
C.函数形参的作用范围只是局限于所定义的函数内。
D.子函数必须位于主函数之前。
8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( A)。
A.该变量只在该复合语句中有效B.该变量在该函数中有效C.该变量在本程序范围内均有效D.该变量为非法变量9. 以下正确的函数形式是( D )。
A.double fun(int x,int y) { z=x+y;return z;}B.fun(int x,y) { int z; return z;}C.fun(x,y) { int x,y; double z; z=x+y; return z;}D.double fun( int x,int y) {double z; z=x+y; return z; }10. 以下程序的输出结果是( B )。
程序设计基础试题(附答案)程序设计基础复习题一、单选1、一个完整的计算机系统应该包括()A、系统软件和应用软件B、计算机及其外部设备C、硬件系统和软件系统D、系统硬件和系统软件2、“裸机”的概念是指()A、正在进行设计还没有组装好的计算机B、已经组装好但还没有安装任何软件的计算机C、仅安装了操作系统的计算机系统D、安装了文字处理软件但没有安装专用数据处理系统的计算机3、世界上第一台电子数字计算机研制成功的时间是()A、1936年B、1946年C、1956年D、1970年4、CASE的含义是()A、计算机辅助设计B、计算机辅助制造C、计算机辅助教学D、计算机辅助软件工程5、当前广泛使用的微型计算机是()A、第一代B、第二代C、第三代D、第四代6、当代计算机的体系结构称为是()A、冯诺依曼机B、非冯诺依曼机C、图灵机D、比尔盖茨机7、硬盘是()A、输入设备B、输出设备C、存储设备D、计算设备8、下面4句话中,最准确的表述是()A、程序=算法+数据结构B、程序是使用编程语言实现算法C、程序的开发方法决定算法设计D、算法是程序设计中最关键的因素9、计算机能直接执行的语言是()A、机器语言B、汇编语言C、高级语言D、目标语言10、解释程序的功能是()A、将高级语言程序转换为目标程序B、将汇编语言程序转换为目标程序C、解释执行高级语言程序D、解释执行汇编语言程序11、下面4种程序设计语言中,不是面向对象式语言的是()A、JAVAB、Object PascalC、DelphiD、C12、不是C语言的基本数据类型是()A、intB、doubleC、charD、bool13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符()A、/B、%C、*D、++14、数据的逻辑结构分为()A、纯属结构和非线性结构B、顺序结构和非顺序结构C、树型结构和图型结构D、链式结构和顺序结构15、用链表表示纯属表的优点是()A、便于随机存取B、便于插入和删除操作C、花费的存储空间较顺序存储少D、元素的物理顺序与逻辑顺序相同16、栈的最主要特点是()A、先进先出B、先进后出C、两端进出D、一端进一端出17、下面4句结论只有一句是错误的,它是()A、二叉树是树B、二叉树的左右子树的位置可以颠倒C、可以使用二叉树的思想对数值进行排序D、可以采用链表方式存储二叉树18、螺旋模型中包括需求定义、风险分析、工程实惠和评审四个阶段,在开发过程中()A、每个周期都要包括这四个阶段B、每个周期可以包括不同的阶段C、在最后交付使用之前才进行评审D、在项目开始时才需要进行风险分析19、软件工程的出现主要是由于()A、程序设计方法学的影响B、其他工程科学的影响C、软件危机的出现D、计算机的发展20、在软件工程中,软件测试的目的是()A、试验性运行软件B、发现软件错误C、证明软件是正确的D、找出软件中全部错误二、填空题1、世界上最早的高级程序设计语言是()2、计算机按照工作原理进行分类可以分为()和()3、当前计算机的最基本原理采用的是()4、计算机存储器一般分为两级,它们是()和()5、高级语言程序的翻译有两种方式,一种是(),另一种是()6、数据的存储结构可以用()和()7、树型结构的主要特征是结点之间存在着一种层次的关系,数据元素之间的关系是()的关系。
计算机程序设计基础(C语言)单项选择练习题一、基本概念1. C语言程序是由构成的。
A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数2. 是构成C语言程序的基本单位。
A)函数 B)过程 C)子程序 D)子例程3.C语言可执行程序从开始执行。
A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置5. 以下说法中正确的是。
A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main( )函数中定义C)C语言程序总是从main( )函数开始执行D)C语言程序中的main( )函数必须放在程序的开始部分6. 下列方法中错误的是。
A)主函数可以分为两个部分:主函数说明部分和主函数体。
B)主函数可以调用任何非主函数的其它函数。
C)任何非主函数可以调用其它任何非主函数。
D)程序可以从任何非主函数开始执行。
7.下列关于C语言的说法错误的是。
A) C程序的工作过程是编辑、编译、连接、运行B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关C) C程序的三种基本结构是顺序、选择、循环D) 一个C程序总是从main函数开始执行的8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行。A) 编辑、编译 B )编辑、连接 C) 编译、连接 D) 编辑、改错9.下列说法中正确的是。
A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。
B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。
C)由于C程序是高级语言程序,因此输入后即可执行。
D)由于C程序是高级语言程序,因此它是由命令组成的。
练习题1、在C++中,用于实现运行时多态性的是( )。
A.内联函数B.重载函数C.模板函数D.虚函数2、下列关于运算符重载的叙述中,正确的是( )。
A.通过运算符重载,可以定义新的运算符B.有的运算符只能作为成员函数重载C.若重载运算符+,则相应的运算符函数名是+D.重载二元运算符时,必须声明两个形参3、对于语句 cout<<x<<endl;错误的是描述是()。
A.“cout”是一个输出流对象B.“endl”的作用是输出回车换行C.“x”是一个变量D.“<<”称作提取运算符4、下面合法的C语言字符常量是(B)A、‘\t'B、 "A"C、 65D、 A5、有如下类声明,则类MyDERIVED中保护的数据成员和成员函数的个数是(D)。
class MyBASE{ private: int k;public: void set(int n){ k=n;}int get( )const{ return k;} };class MyDERIVED: protected MyBASE{ protected: int j;public: void set(int m, int n){ MyBASE::set(m); j=n;}int get( ) const { return MyBASE::get( )+j; } };A.4B.3C.2D.16、已知在一个类体中包含如下函数原型: Volume operator-(Volume)const;,下列关于这个函数的叙述中,错误的是( )。
A.这是运算符-的重载运算符函数B.这个函数所重载的运算符是一个一元运算符C.这是一个成员函数D.这个函数不改变类的任何数据成员的值7、某文件中定义的静态全局变量(或称静态外部变量)其作用域是 ( )A.只限某个函数B.本文件C.跨文件D.不限制作用域8、实现运行时的多态性要使用(D)。
填空题1、在微机中通常说是的cpu是指运算器和控制器。
2、C程序的运算符中赋值运算符的优先级仅高于逗号运算符。
3、在C语言中如果对函数f的类型未加显说明,则函数f的隐含类型是int型。
4、在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是rewind( )。
5、CPU、主存储器、和外部设备组成计算机的硬件系统。
6、存储器是计算机能够实现“存储程序”功能的硬件基础。
7、使用strcpy函数应包括的头文件是string.h。
8、定义文件指针fp的定义语句为FILE*fp。
9、硬件系统和软件系统组成一个完整的计算机系统。
10、C程序中,函数体放在一对{}中。
11、在C语言中,输入操作是由库函数printf( )完成的,输入操作是由库函数scanf()完成的。
12、在函数外部定义的变量统称为全局变量,它们的作用域从定义之处开始,直到源文件或程序结束。
13、C语言中的文件,按存取方式可以分为顺序存取文件和随机存取文件。
14、在一个C源程序中,注释部分两侧的分界符分别为/*和*/。
15、在C语言中,如果实参是简单的数据类型,则函数形参和实参之间的数据传递,只能由实参传给形参。
16、一个C源程序中至少应包括一个名为main( )的主函数。
17、当函数类型和return语句中的表达式的类型不一致时,则应以函数类型为准。
18、C语言规定一维数组名代表一维数组的起始地址。
19、结构体是用户自己定义的一个集合体,它由多个成员组成,成员的数据类型允许不同。
20、C语言中的文件,按数据的组织形式可以分为文本文件和二进制文件。
21、在系统总线上通常传输的三种信号是地址信号、数据信号、控制信号。
22、一个函数由函数说明和函数体两部分组成。
23、C语言中,函数在调用之前必须先定义。
24、指针数组的全部数组元素必须是指向相同数据类型的指针。
25、C语言规定,结构体变量的地址在数值上等于第一个成员的地址。
26、判断文件是否结束使用的函数是feof( )。
程序设计基础试题及答案## 程序设计基础试题及答案### 一、选择题1. 下列哪个选项是C语言中正确的数据类型?A. int32B. float64C. doubleD. string答案:C2. 以下哪个是C语言中的控制结构?A. if-elseB. switch-caseC. forD. All of the above答案:D3. 在C语言中,哪个关键字用于定义一个函数?A. classB. functionC. defD. void答案:D### 二、填空题4. 在C语言中,`printf`函数用于_______。
答案:输出5. 一个C程序的执行从`main`函数的_______开始。
答案:第一行6. C语言中的数组声明方式为:`type arrayName[_______]`。
答案:数组大小### 三、简答题7. 请简述C语言中指针的概念。
答案:指针是一种变量,它存储了另一个变量的内存地址。
在C语言中,指针可以用于直接访问和操作内存,实现高级编程技术,如动态内存分配、函数指针等。
8. 解释C语言中结构体(struct)的作用。
答案:结构体是C语言中一种用户自定义的数据类型,它允许将多个不同类型的变量组合成一个单一的复合数据类型。
结构体可以用来表示复杂的数据对象,如学生信息、员工记录等。
### 四、编程题9. 编写一个C语言程序,实现两个整数的加法,并打印结果。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two integers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```10. 编写一个C语言程序,实现字符串的反转。
第 1 页 共 1 页 C程序设计基础测试题(一)资料 学号: 姓名: C#程序设计基础测试题 一、填空题: 1、是所有数组的基类。 2、布尔型的变量可以赋值为关键字或。 3、有一个属性,通过它可以获取数组的长度。 4、设x=10; 则表达式 x 5、已知整型变量a=5,b=4,c=6,则a>b?(a>c?a:c):b的结果为。 6、有一个字符串的定义为string s = “hello world!”; 在此字符串中,字符w的索引是。 7、C#语言源代码文件的后缀名是。 8、在C#程序中,程序的执行总是从方法开始的 9、在循环执行过程中,希望当某个条件满足时退出循环,使用语句 10、下列程序段执行后,a[4]的值为。i nt a={1,2,3,4,5};a[4]=a[a[2]]; 11、8/3的结果是。 12、在Array类中,可以对一维数组中的元素进行排序的方法是。 第 1 页 共 1 页
13、是独立于CPU 的指令集,它可以被高效地转换为特定于某种CPU 的代码。 14、C#中执行下列语句后,int n=21; n 18、C#中的字符串有两类,规则字符串和逐字字符串,定义逐字字符串时,应该在其前面加上号。 19、计算表达式“10*10*10>10||2 20、循环语句“for”循环次数为次。 二、选择题: 1、关于如下程序结构的描述中,哪一项是正确的? for ( ; ; ) { 循环体; } a) 不执行循环体 b) 一直执行循环体,即死循环 c) 执行循环体一次 d) 程序不符合语法要求 2、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类型,如果类型省略,则定义为。a ) int b) sbyte 第 1 页 共 1 页
c) uint d) ulong 3、C#数组主要有三种形式,它们是。a ) 一维数组 、二维数组、三维数组 b) 整型数组、浮点型数组、字符型数组 c) 一维数组、多维数组、不规则数组 d) 一维数组、二维数组、多维数组 4、可用作C#程序用户标识符的一组标识符是。 A 、 void define +WORD B、 a3_b3 _123 YN C、 for -abc Case D、2a 第 1 页 共 1 页
DO sizeof 5、下列类型中, 哪些不属于引用类型? 。a ) String b) int c) Class d) Delegate 6、C#中导入某一命名空间的关键字是。a ) using b) use c)import d) include 7、以下程序的输出结果是。e num Color { Red, Green =2, Blue } static void Main(string args) { Color c = 0; Color c1 = (Color )2; (\ Console 、Read (); } a) Green,Red b) Red,Green c) 第 1 页 共 1 页
Red,Blue d) Green,Blue 8、分析下列代码段,运行结果是什么?。s tatic void Main(string args) { string words = new string {“a”,“b”,“c”}; foreach (int word in words) { word =“abc”; (word); } (); } a) a b c b) abc abc abc c) bc ac ab d)不能正确编译 9、在数组中对于for 和 foreach 语句,下列那些选项中的说法不正确?。a ) foreach语句能使你不用索引就可以遍历整个数组 b) foreach语句总是从索引1遍历到索引Length c) foreach总是遍历整个数组 d) 如果需要修改数组元素就必须使用for语句 10、在C#中,表示 “” 。a ) 空字符 b) 空串 第 1 页 共 1 页
c) 空值 d) 以上都不是 11、当时,条件“expression1 XOR expression2”的值为真。a ) expression1为真而expression2为假 b) expression1为假而expression2为真 c) expression1和 expression2均为真 d) a和b都对 12、在C#中无需编写任何代码就能将int型数值转换为double型数值,称为。a ) 显式转换 b)隐式转换 c) 数据类型转换 d) 变换 13、下面代码的输出结果是。i nt x =5; int y = x++; (y); y = ++x; (y); a)5 6 b) 6 第 1 页 共 1 页
7 c) 5 6 d) 5 7 14、当month 等于6时,下面代码的输出结果是。i nt days = 0; switch (month) { case2: days =28; break; case4: case6: case9: case11: days =30; break; default: days =31; break; } a) 0 b)28 c) 30 d)31 15、声明double a; int b;下列哪个选项中的表达式能够正确的进行类型转换?。 A 、 a=(decimal)b; 第 1 页 共 1 页
B。a=b; C、 a=(int)b ; D、 b=a; 16、请问经过表达式a =3 +1 >5 ? 0 :1的运算,变量a的最终值是。A 。4 B。0 C。1 D。3 17、下列哪个选项能正确的创建数组?。 A 、 int[,] array=int[4,5]; size=(()); int pins=new int [size]; C、 string str=new string; D、 int pins = new int[2]; 18、能作为C#程序的基本单位是。 A 、 字符 B、 语句 C、 函数 D、 源程序文件 19、将变量从字符串类型转换为整型可以使用的类型转换方法是。 () 第 1 页 共 1 页
() (); 20、字符串连接运算符包括&和。 A 、 + B、y/y的值是&&(e=b-d>0)运算后,e的值是。 A 、0 B、1 C、true D、false 25、以下程序的输出结果是。s tring str=”b856ef10”; string result=””; for(int i=0;str[i]>=’a’&&str[i] result =str[i]+result; (result); } A、10fe658b B、feb C、10658 D、b 26、在下面循环语句中循环体执行的次数为。 for(int i=0; in/2) break; A、 n/2 B、 n/2+1 C、 n/2-1 第 1 页 共 1 页
D、 n-1 27、在C#程序中,使用关键字来创建数组。a ) new b) array c) staic d) this 28、在C#语言的循环结构中,首先执行一次,然后再判断条件的循环结构是。a ) while循环 b) do?while循环 c) for循环 d) foreach循环 29、在C#中,下列代码的运行结果是。i ntage=new int{16,18,20,14,22}; foreach(int i in age){ if(i>18) 。 ) continue; (()+” ”); } a)16,18,20,14,22 b)16,18,14,22 第 1 页 共 1 页
c)16,18,14 d)16,18 30、以下关于C#代码的说法正确的是。f or(int i=l;i switch(i) { case1: Console、Write{()); case2: Console、Write((i*2)、ToString()); case3: Console、Write((i*3)、ToString()); } } a)有编译错误,提示case标签不能贯穿到另一个标签,不能运行 b) 输出149 c) 输山123246369 d) 正确运行,但没有输出 31、在c#中,下列代码的运行结果是。u sing System; class Test{ static Void Main(string args){ int a=10,b=20; int c=a>b?a++:--b; ; } } a)10 b)11