C程序设计基础题(带答案)
c语言《程序设计基础》课后习题参考答案与解析
c语言《程序设计基础》课后习题参考答案与解析1. 习题一:编写一个C程序,输出“Hello World!”。
解析:这是一个非常简单的C程序,只需要使用printf函数输出所需的字符串即可。
```c#include <stdio.h>int main() {printf("Hello World!");return 0;}```2. 习题二:编写一个C程序,计算两个整数的和并输出结果。
解析:这个程序需要使用scanf函数从用户输入中读取两个整数,并使用printf函数输出它们的和。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入第一个整数:");scanf("%d", &num1);printf("请输入第二个整数:");scanf("%d", &num2);sum = num1 + num2;printf("两个整数的和为:%d", sum);return 0;}```3. 习题三:编写一个C程序,判断一个数是奇数还是偶数并输出结果。
解析:这个程序需要使用scanf函数读取用户输入的整数,并使用if-else语句判断该数的奇偶性,然后使用printf函数输出结果。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("该数是偶数");} else {printf("该数是奇数");}return 0;}```4. 习题四:编写一个C程序,判断一个年份是否为闰年并输出结果。
程序设计基础(C语言)习题以及答案
其身正,不令而行;其身不正,虽令不从。
——《论语》一、选择题1.下列属于C语言中合法的标识符的是( B )A 、ex-1B 、-cookC 、951aD 、if2.若 x 为 float 型变量,则以下语句(A )。
x=213.82631;printf("%-4.2f\n",x);A、输出为213.83B、输出格式描述符的域宽不够,不能输出C、输出为213.82D、输出为-213.823.一个C程序的执行是从(C )A、main函数开始,直到最后一个函数结束B、第一个函数开始,直到最后一个函数结束C、main函数开始,直到main函数结束D、第一条语句开始,直到最后一条语句结4.构成C语言源程序的基本单位是(B )A、过程B、函数C、子程序D、命令5.以下叙述不正确的是(D )A、注释说明被计算机编译系统忽略B、注释说明必须跟在“//”之后不能换行或者括在“/*”和“*/”之间且注释符必须配对使用C、注释符“/”和“*”之间不能有空格D、在C程序中,注释说明只能位于一条语句的后面6.在C程序中,main函数的位置( A)A、可以任意B、必须作为最后一个函数C、必须作为第一个函数D、必须放在它所调用的函数之后7. C语言属于(C )A、机器语言B、汇编语言C、高级语言D、低级语言云路鹏程九万里,雪窗萤火二十年。
——《王实甫》人之为学,不日进则日退,独学无友,则孤陋而难成;久处一方,则习染而不自觉。
——《顾炎武》8.使用“scanf("a=%d,b=%d",&a,&b)”,要使a,b的值均为25,正确的输入是(D )。
A、a=25 b=25(空格分开)B、25 25(空格分开)C、25,25D、a=25,b=259. 下列叙述中,不正确的是( C)A、分号是C语句的必要组成部分B、C语句的注释可以写在语句的后面C、主函数的名字不一定用main表示D、函数是C程序的基本单位10.C程序是由( B)构成的A、若干过程B、一个或多个函数C、若干子程序D、一个主程序与若干子程序11. 以下程序的输出结果是(B )。
C语言程序设计基础知识 习题一及参考答案
第一章:程序设计基础知识一、单项选择题1、以下( )是面向过程的程序设计语言。
A)机器语言 B)汇编语言 C)高级语言 D)第四代语言2、程序设计一般包含以下四个步骤,其中其中首先应该完成的是( )。
A)设计数据结构和算法B)建立数学模型C)编写程序 D)调试和运行程序3、以下常用算法中适合计算等差级数的算法是( )。
A)枚举法B)递推法 C)分治法 D)排序法4、以下不属于算法基本特征的是( )。
A)有穷性 B)有效性C)可靠性 D)有一个或多各输出5、以下描述中不正确的是( )。
A)程序就是软件,但软件不紧紧是程序。
B)程序是指令的集合,计算机语言是编写程序的工具。
C)计算机语言都是形式化的语言,它有一个语法规则和定义。
D)计算机语言只能编写程序而不能表示算法。
6、下面描述中,正确的是( )A)结构化程序设计方法是面向过程程序设计的主流。
B)算法就是计算方法。
C)一个正确的程序就是指程序书写正确。
D)计算机语言就是编写程序的工具而不是表示算法的工具。
7、下面描述中,不正确的是( )。
A)递归法的关键是必须有一个递归终止的条件。
B)递归算法要求语言具有反复自我调用子程序的能力。
C)对于同一个问题,递推算法比递归算法的执行时间要长。
D)递推算法总可以转换为一个递归算法。
8、N-S图与传统流程图比较,主要优点是( )。
A)杜绝了程序的无条件转移。
B)具有顺序、选择和循环三种基本结构。
C)简单、只管。
D)有利于编写程序。
A)B)C)D)二、填空题1、在流程图符号中,判断框中应该填写的的是________。
(判断条件)2、结构化程序设计是__________应遵循的方法和原则。
(面向过程编程)3、结构化程序必须用__________程序设计语言来编写。
(具有结构化控制语句)4、可以被连续执行的一条条指令的集合称为计算机的________。
(程序)5、只描述程序应该“做什么”,而不必描述“怎样做”的语言被称为________。
c程序设计习题及答案
第一章C程序概述一、选择题1、以下关于C语言标志符的描述中,正确的是()A)标志符可以由汉字组成B)标志符只能以字母开头C)关键字可以作为用户标志符D)Area与area是不同的标志符2、以下正确的叙述是()A)在C语言中,main函数必须位于文件的开头B)C语言每行只能写一条语句C)C语言本身没有输入、输出语句D)对一个C语言进行编译预处理时,可检查宏定义的语法错误3、下面说法正确的是()A)C程序由符号构成B)C程序由标示符构成C)C程序由函数构成D)C程序由C语句构成4、以下叙述不正确的是()A)一个C源程序可以由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面5、C语言规定:在一个源程序中,main函数的位置()A)必须在最开始B)必须在系统调用的库函熟的后面C)可以任意D)必须在最后二、填空题1、在TURBO C环境中用RUN命令运行一个C程序,所运行的程序的扩展名是---------------。
2、结构化程序由-------------------、----------------------、------------------------三种基本结构组成。
3、C语言源程序文件的扩展名是-------------------,经过编译后,生成的扩展名是---------------------,经过连接后,生成的扩展名是--------------------------。
4、在C程序中,输入操作是由库函数----------------------完成的,输出操作是由库函数---------------------------完成的。
5、一个C源程序中至少应包括一个----------------------------。
第二章数据类型、运算符与表达式一、选择题1、若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为()。
c语言程序设计基础试题及答案
c语言程序设计基础试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整数?A. 0x10B. 0X1GC. 08D. 0L答案:A3. 在C语言中,用于定义一个函数的关键字是?A. defineB. functionC. defD. void答案:B4. C语言中,以下哪个是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A5. 在C语言中,以下哪个运算符用于求余?A. %B. /C. //D. %答案:A二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量的关键字是________。
答案:int2. 如果一个函数没有返回值,应该使用________关键字声明。
答案:void3. 在C语言中,________运算符用于连接字符串。
答案:+4. C语言中,________运算符用于比较两个值是否相等。
答案:==5. 在C语言中,________关键字用于定义一个指针变量。
答案:*三、简答题(每题5分,共20分)1. 简述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。
数组的每个元素可以通过指针运算来访问。
2. 解释C语言中函数原型声明的作用。
答案:函数原型声明提供了函数的名称、返回类型和参数类型,但不需要函数体。
它允许在函数定义之前调用函数,同时帮助编译器检查函数调用的正确性。
3. 什么是C语言中的预处理指令,举例说明。
答案:预处理指令是C语言中的特殊命令,用于在编译之前处理源代码。
C语言程序设计-习题大全(含答案)-C语言试题
C语言程序设计习题及答案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 )个字节。
A)1 B)2 C)8 D)411已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=’A’+'6’-’3’后,c2中的值为( A )。
C语言 程序设计基础试题一及答案
《程序设计基础》考试试卷一班级姓名学号____________一、选择题(20分)1.算法具有五个特性,以下选项中不属于算法特性的是(A)有穷性(B)简洁性(C)可行性(D)确定性2.以下选项中可作为C语言合法常量的是(A)-80. (B)-080 (C) (D)3.以下叙述中正确的是(A)用C语言实现的算法必须要有输入和输出操作(B)用C语言实现的算法可以没有输出但必须要有输入(C)用C程序实现的算法可以没有输入但必须要有输出(D)用C程序实现的算法可以既没有输入也没有输出4.以下不能定义为用户标识符是(A)Main (B) _0 (C) _int (D) sizeof5.以下选项中,不能作为合法常量的是(A) (B) (C)+4 (D)6.数字字符0的ASCII值为48,若有以下程序main(){char a='1',b='2';printf("%c,",b++);printf("%d\n",b-a);} 程序运行后的输出结果是(A)3,2 (B)50,2 (C)2,2 (D)2,507.有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运行后的输出结果是(A) (B) (C) (D)8.有以下语句:int b;char c[10];,则正确的输入语句是A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c);(C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c);9.有以下程序main(){int m,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p); } 若想从键盘上输入数据,使变量M中的值为123,N中的值为456,P中的值为789,则正确的输入是A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 78910.有以下程序main(){int a,b,d=25;a=d/10%9;b=a&&(-1);printf("%d,%d\n",a,b); }程序运行后的输出结果是A)6,1 B)2,1 C)6,0 D)2,011.有以下程序main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);}程序运行后的输出结果是(A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 312.若整型变量a、b、c、d中的值依次为:1、4、3、2。
c程序设计考试题目及答案
c程序设计考试题目及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. intC. voidD. return答案:C2. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A3. 若有定义`int a = 5;`,则执行`a += 3;`后,变量a的值是多少?A. 3B. 5C. 8D. 无法确定答案:C4. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. $variableD. variable!答案:B5. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World'D. 'Hello, World'答案:A6. C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][];B. int array[][3];C. int array[3][3];D. int array[][];答案:C7. 在C语言中,以下哪个选项是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y) elseD. if (x > y) else if答案:A8. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. for i = 0; i < 10; i++C. for (int i = 0; i < 10;)D. for (i = 0; i < 10; i++)答案:A9. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int, int);B. int add(int a, int b)C. int add(int, int) {}D. int add(a, b)答案:A10. 在C语言中,以下哪个选项是正确的指针声明?A. int *ptr;B. int ptr[];C. int *ptr[10];D. int ptr(int);答案:A二、填空题(每题2分,共20分)1. 在C语言中,`printf`函数用于__输出__。
程序设计基础c语言试题及答案
程序设计基础c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于表示逻辑“与”的运算符是:A. &&B. ||C. &D. |答案:A2. 下列哪个选项不是C语言中的关键字?A. intB. floatC. longD. double答案:D3. 在C语言中,下列哪个函数用于将字符串连接起来?A. strcat()B. strcmp()C. strcpy()D. strlen()答案:A4. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A5. 下列哪个选项是C语言中的合法变量名?A. 2nd_nameB. intC. _nameD. name$答案:C6. C语言中,用于定义一个指针的语法是:A. int *p;B. int *p = 0;C. int p*;D. int *p = 1;答案:A7. 在C语言中,下列哪个选项是正确的函数声明?A. int function(int a, int b);B. int function(int, int);C. int function(int a; int b);D. int function(int, int a, b);答案:A8. C语言中,用于表示逻辑“非”的运算符是:A. !B. ~C. &&D. ||答案:A9. 下列哪个选项是C语言中的合法常量?A. 1.23B. 0x1AC. 0123D. All of the above答案:D10. 在C语言中,下列哪个选项是正确的数组声明?A. int arr[5] = {1, 2, 3};B. int arr[5] = {1, 2, 3, 4, 5, 6};C. int arr[] = {1, 2, 3};D. int arr[5];答案:C二、填空题(每题2分,共20分)1. C语言中,用于输入的函数是________。
c语言程序与设计基础知识试题及答案
c语言程序与设计基础知识试题及答案一、单项选择题(每题2分,共20分)1. C语言中,用于定义结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整型常量?A. 0x12B. 0123C. 0.12ED. 12e答案:A3. 在C语言中,用于定义数组的关键字是:A. arrayB. listC. vectorD. none of the above答案:D4. 下列哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B5. C语言中,用于文件操作的库函数是:A. stdio.hB. string.hC. math.hD. stdlib.h答案:A6. 下列关于指针的描述,错误的是:A. 指针可以存储变量的地址B. 指针可以存储一个值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B7. 在C语言中,用于定义函数的关键字是:A. functionB. defineC. defD. void答案:D8. 下列哪个选项不是C语言中的控制结构?A. if-elseB. switch-caseC. forD. goto答案:D9. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. all of the above答案:D10. C语言中,用于定义枚举类型的关键字是:A. enumB. typedefC. structD. union答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个名为“person”的结构体,包含姓名和年龄两个成员,正确的定义方式是:struct person { char name[50];int age; }。
答案:正确2. 在C语言中,使用________函数可以输出格式化的字符串到控制台。
程序设计基础试题及答案
程序设计基础试题及答案一、选择题1. 在C语言中,以下哪个是字面常量?A. intB. 5C. xD. if答案:B. 52. 下列语句中,哪个是正确的函数声明?A. int sum(int a, b);B. int sum(int a, int b) {}C. sum(int a, int b) {}D. int sum(int a, int b);答案:D. int sum(int a, int b);3. 下列哪个不是常用的数据类型?A. intB. stringC. floatD. char答案:B. string4. 在C语言中,以下哪个符号用于表示逻辑与操作?A. &&B. ||C. !D. =答案:A. &&5. 在C语言中,以下哪个用于引入标准输入输出函数的头文件?A. <stdio.h>B. <math.h>C. <stdlib.h>D. <string.h>答案:A. <stdio.h>二、填空题1. 下面的程序运行结果是什么?```c#include <stdio.h>int main() {int a = 5, b = 3;if (a > b) {printf("a大于b");} else {printf("a小于等于b");}return 0;}```答案:a大于b2. 下列代码中,缺少的表达式是什么?```c#include <stdio.h>int main() {int i;for (i = 0; i < ; i++) {printf("%d ", i);}return 0;}```答案:缺少循环条件表达式,例如 i < 10。
3. 下面的程序运行结果是什么?```c#include <stdio.h>int main() {int i;for (i = 10; i > 0; i--) {if (i % 2 == 0) {continue;}printf("%d ", i);}return 0;}```答案:9 7 5 3 14. 下列代码中,___ 处应该填入什么运算符?```c#include <stdio.h>int main() {int a = 5, b = 3;int c = a ___ b;printf("%d", c);return 0;}```答案:+,结果为 8。
基础的c语言程序试题及答案
基础的c语言程序试题及答案基础的C语言程序试题及答案1. 题目:编写一个C语言程序,计算并输出1到100之间所有奇数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {sum += i;}}printf("1到100之间所有奇数的和为:%d\n", sum);return 0;}```2. 题目:编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除运算。
答案:```c#include <stdio.h>int main() {double num1, num2;char operator;double result;printf("请输入第一个数字:");scanf("%lf", &num1);printf("请输入运算符(+,-,*,/):"); scanf(" %c", &operator);printf("请输入第二个数字:");scanf("%lf", &num2);switch (operator) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':if (num2 != 0) {result = num1 / num2;} else {printf("除数不能为0\n");return 1;}break;default:printf("无效的运算符\n");return 1;}printf("%.2lf %c %.2lf = %.2lf\n", num1, operator, num2, result);return 0;}```3. 题目:编写一个C语言程序,实现字符串的反转。
程序设计基础试题及答案
程序设计基础试题及答案一、选择题(每题2分,共10分)1. 下列哪个选项是C语言中正确的整型常量表示?A. 0x1AB. 0x1aC. 0X1AD. 0x1A和0x1a答案:D2. 在C语言中,下列哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:B3. 以下哪个选项是合法的C语言变量名?A. 2variableB. variable2C. _variableD. variable$2答案:B4. 在C语言中,下列哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"'D. 'Hello, World!'答案:A5. 下列哪个选项是C语言中正确的注释方式?A. // This is a commentB. /* This is a comment */C. <!-- This is a comment -->D. Both A and B答案:D二、填空题(每题2分,共10分)1. 在C语言中,用于定义一个整型变量的关键字是________。
答案:int2. C语言中,用于定义一个浮点型变量的关键字是________。
答案:float 或 double3. C语言中,用于定义一个字符型变量的关键字是________。
答案:char4. C语言中,用于定义一个布尔型变量的关键字是________。
答案:_Bool 或 bool(C99标准)5. 在C语言中,用于定义一个数组的语法是________。
答案:类型数组名[大小]三、简答题(每题5分,共20分)1. 简述C语言中函数的定义和调用过程。
答案:函数定义包括返回类型、函数名、参数列表和函数体。
调用函数时,需要使用函数名和相应的参数列表。
C语言程序设计基础测试题-答案
C语言程序设计基础测试题一、单选[1] 下面叙述中错误的是____。
A. 复合语句中定义的函数只在该复合语句中有效B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式C. 形式参数也是局部变量D. 主函数中定义的变量在整个程序中都是有效的[2] 下列说法中正确的是____。
A.带参数的宏定义中的参数是没有类型的B.宏展开将占用程序的运行时间C.宏定义命令是C语言中的一种特殊语句D.使用#include命令包含的头文件必须以“.h"为后缀[3] 若函数的形参为一维数组,则下列说法中正确的是____。
A.调用函数时的对应实参必为数组名B.形参数组可以不指定大小C.形参数组的元素个数必须等于实参数组的元素个数D.形参数组的元素个数必须多于实参数组的元素个数[4] 系统的标准输出设备是____。
A.键盘B.硬盘C.内存D.显示器[5] 下面叙述中正确的是____。
A.全局变量在定义它的文件中的任何地方都是有效的B.全局变量在程序的全部执行过程中一直占用内存单元C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式D. 说明函数时必须明确其参数类型和返回类型[6] C程序的基本结构单位是____。
A.文件B.语句C.函数D.表达式[7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。
A.aa数组元素的值分别是"abcd"和"ABCD"B.aa是指针变量,它指向含有两个数组元素的字符型一维数组C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址D.aa数组的两个元素中各自存放了字符'a'和'A'的地址[8] 任何一个C语言的可执行程序都是从____开始执行的。
A.程序中的第一个函数B.main( )函数的入口处C.程序中的第一条语句[9] 操作系统的作用是()。
C程序设计基础题(带答案)
选择题:1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为()x=(i=4,j=16,k=32) .(C程序设计)A) 4 B) 16 C) 32 D) 522.一个C程序的执行是从().(C程序设计)A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束3.以下合法的变量名称().(C程序设计)A) Tel_num B) 8678 C) bath.h D) float4.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,以%d形式输出c2,则结果为:()(C程序设计)A) D B) 68 C) 不确定的值 D) C5.已知字母A的ASCII值为65,以下C语言程序的输出的结果是:( ). (C程序设计) char c1='A',c2='D';printf("%c,%d\n",c1,c2);A)因输出格式不合法,输出错误信息 B)A,68C)A,D D)65,686.以下程序的运行结果是(). (C程序设计)main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A) 6,1 B) 2,1 C) 6,0 D) 2,07.下面的程序段,输出结果是:( ). (C程序设计)int a=3,b=4,c;c=(a>b)? a+2:b+3;printf(“%d”,c);A) 7 B) 3 C) 4 D) 58.已知ch是字符型变量,下面不正确的赋值语句是(). (C程序设计)A) ch=‘a+b’; B) ch=‘\0’; C) ch=‘7’+‘9’; D) ch=5+9;9.判断char型变量ch是否为大写字母的正确表达式是(). (C程序设计)A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)10.读下面的程序段,输出结果是(). (C程序设计)int aa=2;aa*=2;b=aa++;printf(“%d”,b);A) 3 B) 4 C) 5 D) 611. 读程序,分析下面的程序将输出()次“我爱中国”. (C程序设计)int i;for(i=1;i<5;i--){printf(“我爱中国\n”); }A) 1B) 4C) 0D) 无限次12.int i; i=sizeof(float)的结果是(). (C程序设计)A) 4 B)3 C) 2 D) 113.以下程序段,运行结果为(). (C程序设计)x=-1;for(;;){x=x*x;if(x!=1){break;}}A)是死循环 B)循环执行二次C)循环执行一次 D)有语法错误14.下面程序的运行结果是(). (C程序设计)#include<stdio.h>main(){int num=0;while(num<=2){num++;printf("%d\n",num);}}a)1 b)1 c)1 d)12 2 23 3415.若执行下面的程序时从键盘上输入3和4,则输出结果是().(C程序设计) int a,b,sscanf(“%d%d”,&a,&b);s=a;if(a<b)s=b;s=s*s;printf(“%d”,s);A) 14 B) 16 C) 18 D) 2016.下列代码的输出结果是().(C程序设计)int i,j=0;for(i=1;i<10;i++){if(i%4 !=0){j+=i;}}printf(“%d,%d”,i,j);A) 10,33 B) 3,6 C) 10.12 D) 4,1017. 运行下列代码后s的值为().(C程序设计)int i,s=0;for(i=0;i<3;i++){switch(i){case 1: s+=i;case 2:s+=i;default: s+=i;}Printf(“%d”,s);}A) 7 B) 6 C) 8 D) 918. 下列代码的输出结果是().(C程序设计)int i;int bookNum=4;int totalPrice=0;int bookPrice[4]={10,20,30,40};for(i=0; i<4; i+=2){totalPrice+=bookPrice[i];}printf(“%d”,totalPrice);A) 30 B) 40 C) 60 D) 10019.以下程序的输出结果是(). (C程序设计)main( ){ int x=2,y=1,z=2;if (x<y)if (y<0) z=0;else z+=1;printf(“%d\n”,z);}A) 3 B) 0 C) 2 D) 120. C语言中的运算对象必须是整型的运算符是(). (C程序设计)A) % B) / C) = D) <=21. 若变量已经正确定义并赋值,下面符合C语言语法的表达式是()。
《C程序设计基础》模拟考试题(含答案)
《C程序设计基础》模拟考试题一、选择题(每题2分。
共23道选择题)1、关于C程序的叙述,错误的说法是(B)A、C程序总是从主函数开始执行B、C程序中定义的第一个函数是主函数C、在主函数中可以调用其他函数D、一个C程序可以包括多个函数2、C语言的基本数据类型包括(A)A、charB、s tructC、s tringD、typedef3、C语言的关键字是(A)A、whileB、p rintfC、m ainD、FILE4、错误的C标识符是(D)A、e2B、n ame_C、A_BD、2e5、在下列运算中,优先级最低的运算符是(B)A、= =B、=C、&&D、+6、设a、b和c都是int型变量,且a=7,b=8,c=9,则表达式(a*b)/c + 6 - 14%c的值是(B)A、6B、7C、8D、97、下列一维数组说明中,错误的是(C)A、int a[]={1,2,3};B、int a[5];C、int n=5, a[n];D、int a[5]={1,2,3};8、执行语句:printf(“a\nb”)输出的结果是(C)A、a\nbB、abC、第一行输出a,第二行输出bD、不能输出9、要表示年龄(age)在18到25之间,正确的表达式是(B)A、18<=age<=25B、18<=age && age<=25C、18<=age || age<=25D、18<=age and age<=2510、设有定义int a,*p;下列赋值语句中,正确的是(B)A、p=a;B、p=&a;C、p=*a;D、*p=&a;11、若已经定义char a[10]={“abcd”}, *p=a;则表达式*(p+1)的值是(C)A、abcdB、bcdC、bD、语法错误12、若已经定义struct stu{int a,b; } student; ,则下列叙述中正确的是(B)A、stu 是结构变量B、student 是结构变量C、student 是结构类型D、a和b是结构型变量13、设有定义int a[10], *p=a; 下列对数组元素a[1]的引用中,错误的是(B)A、p[1]B、*(++a)C、*(++ p)D、*(a+1)14、下列叙述中,错误的是(D)A、不同函数中可以使用相同的变量名B、全局变量和局部变量可以同名C、形式参数是局部变量D、main() 函数中定义的变量在整个程序中都可15、设有函数定义:void p(int x){printf(“%d”, x);} 则正确的函数调用是(A)A、p(3);B、a=p(3);C、printf("%d"; p(3));D、p(int x);16、有如下程序段union u{int a; int b; float c;}vu; vu.a=1; vu.b=2; vu.c=3;则vu.a的值是(D)A、1B、2C、3D、以上都不对17、设有如下定义:int x=2 ,y; int fun(int *a){return *a+1;}下列函数调用中,实际参数正确的是(B)A、y=fun(x);B、y= fun (&x);C、y=fun(*x);D、y=fun(a);18、设有宏定义#define N 3+2,则语句printf(“%d”, N*N);的输出结果为(A)A、11B、25C、10D、3;519、执行scanf(“%d+%d”,&a,&b);时,正确的键盘输入是(C)A、3,5B、3 5C、3+5D、3;520、执行if(a<=b){a=b;b=a;}else{a++;++b;}语句后,正确的说法是(C)A、当条件满足时变量a和b的值对换B、当条件满足时变量a和b的值不变C、当条件不满足时变量a和b的值各增加1D、当条件不满足时变量b的值增加1,a不增加21、设已定义int a=3, b=4; 执行if(a=b)printf(“aaa\n”);else printf(“bbb\n”);语句后,正确的说法是(A)A、输出aaaB、输出bbbC、编译时会出错D、运行时会出错22、设有说明语句int x=1, y=2; 则执行表达式x=y= = 3后,变量x的值是(A)A、0B、1C、2D、323、已定义float f=1.2;执行语句printf(“%d\n”,f);正确的说法是(D)A、输出 1.2B、输出 1C、语法错误D、可以输出,但不是1.2和1二、阅读题。
程序设计基础(C)第1——5章复习题答案
程序设计基础(C)第1——5章复习题及参考答案一、单选题1.可以在C语言中使用的一组用户标识符是(C)。
A. 3BB. KEYC. _123D. voidsizeof cl_c2 T3_al_ CHA TDO -for scanf 6B2.while(!x)中的!x与下面条件(A)等价。
A. x==0B. x==1C. x!=5D. x!=03.增1减1运算只能作用于(B)。
A. 常量B. 变量C. 表达式D. 函数4.下面四个选项中,均是字符常量或数值常量的选项是(A)。
A. 0.0B. “A”C. …3‟D. +0010f 3.9E-2.5 011 0xabcd8.9e 1e1 0xff00 2e3…&‟ …\”‟ 0a 50.5.下选项中正确的实型常量是(D)。
A. 0B. 0.618*10^2C. .871D. 3.1415 6.C语言中运算对象必须是整型的运算符是(D)。
A. %= 与/B. = 与&C. * 与^D. % 与|7.设a=2,b=2;则++a+b的结果是( D),a的结果是( B ),b的结果是( A)。
A. 2B. 3C. 4D. 59.下列运算符中优先级最低的是(B)。
A. +B. &&C. <=D. sizeof10.设int a=2;则表达式(a++*1/3)的值是(A),a的值是(D)。
A. 0B. 1C. 2D. 311.字符数据在内存中的存储采用的是(D)。
A. 反码B. 补码C. EBCDIC码D. ASCII码12.在C语言类型说明中,int、char、short等类型数据的长度是(D)。
A. 固定的B. 由用户自己定义的C. 任意的D. 与机器字的长度有关的13.在C语言中,不同类型的两个数据混合运算时,要先转换成相同类型再进行运算,设有int,long,unsigned和char类型的变量和数据,则它们的转换规律是(C),表达式最后的运算结果是(D)类型的数据。
程序设计基础试题及答案
程序设计基础试题及答案## 程序设计基础试题及答案### 一、选择题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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选择题:1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为()x=(i=4,j=16,k=32) .(C程序设计)A) 4 B) 16 C) 32 D) 522.一个C程序的执行是从().(C程序设计)A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束3.以下合法的变量名称().(C程序设计)A) Tel_num B) 8678 C) D) float4.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,以%d形式输出c2,则结果为:()(C程序设计)A) D B) 68 C) 不确定的值 D) C5.已知字母A的ASCII值为65,以下C语言程序的输出的结果是:( ). (C程序设计) char c1='A',c2='D';printf("%c,%d\n",c1,c2);A)因输出格式不合法,输出错误信息 B)A,68C)A,D D)65,686.以下程序的运行结果是(). (C程序设计)main(){ int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);}A) 6,1 B) 2,1 C) 6,0 D) 2,07.下面的程序段,输出结果是:( ). (C程序设计)int a=3,b=4,c;c=(a>b) a+2:b+3;printf(“%d”,c);A) 7 B) 3 C) 4 D) 58.已知ch是字符型变量,下面不正确的赋值语句是(). (C程序设计)A) ch=‘a+b’; B) ch=‘\0’; C) ch=‘7’+‘9’; D) ch=5+9; 9.判断char型变量ch是否为大写字母的正确表达式是(). (C程序设计)A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)10.读下面的程序段,输出结果是(). (C程序设计)int aa=2;aa*=2;b=aa++;printf(“%d”,b);A) 3 B) 4 C) 5 D) 611. 读程序,分析下面的程序将输出()次“我爱中国”. (C程序设计)int i;for(i=1;i<5;i--){printf(“我爱中国\n”); }A) 1B) 4C) 0D) 无限次12.int i; i=sizeof(float)的结果是(). (C程序设计)A) 4 B)3 C) 2 D) 113.以下程序段,运行结果为(). (C程序设计)x=-1;for(;;){x=x*x;if(x!=1){break;}}A)是死循环 B)循环执行二次C)循环执行一次 D)有语法错误14.下面程序的运行结果是(). (C程序设计)#include<>main(){int num=0;while(num<=2){num++;printf("%d\n",num);}}a)1 b)1 c)1 d)12 2 23 3415.若执行下面的程序时从键盘上输入3和4,则输出结果是().(C程序设计) int a,b,sscanf(“%d%d”,&a,&b);s=a;if(a<b)s=b;s=s*s;printf(“%d”,s);A) 14 B) 16 C) 18 D) 20 16.下列代码的输出结果是().(C程序设计)int i,j=0;for(i=1;i<10;i++){if(i%4 !=0){j+=i;}}printf(“%d,%d”,i,j);A) 10,33 B) 3,6 C) D) 4,1017. 运行下列代码后s的值为().(C程序设计)int i,s=0;for(i=0;i<3;i++){switch(i){case 1: s+=i;case 2:s+=i;default: s+=i;}Printf(“%d”,s);}A) 7 B) 6 C) 8 D) 918. 下列代码的输出结果是().(C程序设计)int i;int bookNum=4;int totalPrice=0;int bookPrice[4]={10,20,30,40};for(i=0; i<4; i+=2){totalPrice+=bookPrice[i];}printf(“%d”,totalPrice);A) 30 B) 40 C) 60 D) 10019.以下程序的输出结果是(). (C程序设计)main( ){ int x=2,y=1,z=2;if (x<y)if (y<0) z=0;else z+=1;printf(“%d\n”,z);}A) 3 B) 0 C) 2 D) 120. C语言中的运算对象必须是整型的运算符是(). (C程序设计)A) % B) / C) = D) <=21. 若变量已经正确定义并赋值,下面符合C语言语法的表达式是()。
A) a:=b+1 B) a=b=c+2 C)int %3 D) a=a+7=c+b22 . 以下程序的运行结果是(). (C程序设计)main(){int i=10;printf(“dec=%d oct=%o hex=%x\n”,i,i,i);}A) dec=10 oct=10 hex=10 B) dec=10 oct=12 hex=10 C)dec=10 oct=10 hex=a D) dec=10 oct=12 hex=a23.有如下程序,运行结果为( ). (C程序设计)main(){int y=3,x=3,z=1;printf("%d %d\n",(++x,y++),z+2);}输出结果为:A) 3 4 B) 4 2 C)4 3 D) 3 324 以下程序的运行结果是(). (C程序设计)#include “”main(){ char a[11],b[10];scanf(“%s %s”,a,b);strcat(a,b);printf(“a+b=%s\n”,a);}输入:list packA) listpack B) list pack C)list D) packlist25. 以下程序的运行结果是(). (C程序设计)main(){int x=2,y=5;replace(x,y);printf("x=%d,y=%d\n",x,y);getch();}replace(int a,int b){ int t;t=a;a=b;b=t;printf("a=%d,b=%d\n",a,b);}A) a=2,b=5 B) a=2,b=5 C)a=5,b=2 D) a=5,b=2x=2,y=5 x=5,y=2 x=2,y=5 x=5,y=226. 以下程序的运行结果是(). (C程序设计)main(){int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}A) a=1,b=0 B) a=2,b=1 C)a=0,b=0 D) a=1,b=127. 以下程序的运行结果是()。
int a;void f(void){a=3;}main(){a=1;printf(“a=%d\n”,a);f();printf(“a=%d\n”,a);}A) a=1 B) a=1 C)a=3 D) a=3a=3 a=1 a=1 a=328. 以下程序的运行结果是(). (C程序设计)int power(int n){static int f=1;f=f*n;return(f);}main(){int i,n=3;for(i=1;i<=3;i++)printf("%d ",power(n));}A) 3 3 3 B) 1 2 3 C) 3 9 27 D) 1 1 129. 有以下程序,若输入3,输出结果为( ). (C程序设计) main(){int n,i=-1;scanf("%d",&n);if(n>0){int i;for(i=0;i<n;i++);}printf("i=%d\n",i);}A) i=3 B) i=0 C)i=4 D) i=-130.有以下程序,执行后的输出结果是(). (C程序设计) void main(){int a=1,b=3,c=5;int *p1=&a,*p2=&b,*p=&c;*p=*p1*(*p2);printf("%d\n",c);}A) 1 B) 2 C) 3 D) 431.有以下程序,执行后的输出结果是(). (C程序设计)#include <>void main(){ int i,s=0,t[]={l,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)s+=*(t+i);printf("%d\n",s);}A)45 B)20 C)25 D)3632.有以下程序,执行后的输出结果是(). (C程序设计) #include <>void swap(char *x,char *y){char t;t=*x;*x=*y;*y=t;}void main(){ char *s1="abc",*s2="123";swap(s1,s2);printf("%s,%s\n",s1,s2);}A)123,abc B)abc,123 C)1bc,a23 D)321,cba33.有以下程序,执行后的输出结果是(). (C程序设计) #include <>void f(int *q){ int i=0;for( ;i<5;i++)(*q)++;}void main(){ int a[5]={1,2,3,4,5},i;f(a);for(i=0;i<5;i++)printf("%d, ",a[i]);}A)2,2,3,4,5, B)6,2,3,4,5, C)1,2,3,4,5, D) 2,3,4,5,6,34. 若有定义:int a[5];则a数组中首元素的地址可以表示为(). (C程序设计) A)&a B)a+1 C)a D)&a[1]35. 若有以下定义:(C程序设计)int a[10], *p=a;则 *(p+5)表示()。