《C语言程序设计基础》 试卷A及参考答案

合集下载

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语言程序设计试题及答案完整版

C语言程序设计试题及答案完整版

C语言复习资料5元必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。

byte 是指字节, 一个字节= 八个位.5)一定要记住二进制如何划成十进制。

概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。

C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、每个C语言程序中main函数是有且只有一个。

3、在函数中不可以再定义函数。

4、算法的是一定要有输出的,他可以没有输入。

5、break可用于循环结构和switch语句。

6、逗号运算符的级别最低。

第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

关键字不可以作为用户标识符号。

main define scanf printf 都不是关键字。

迷惑你的地方If是可以做为用户标识符。

因为If中的第一个字母大写了,所以不是关键字。

2)实型数据的合法形式:2.333e-1 就是合法的,且数据是2.333×10-1。

考试口诀:e前e后必有数,e后必为整数。

.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。

4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。

碰到这种情况,不要去管,一样做题。

掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。

大学《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语言程序设计考试A卷答案

C语言程序设计考试A卷答案

C语言程序设计考试A卷答案以下是为大家整理的c语言程序设计考试A卷答案的相关范文,本文关键词为语言,程序设计,考试,答案,领导,审批,签名,广州大学,20,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。

系领导审批并签名A卷广州大学20XX-20XX学年第一学期考试卷课程《c语言程序设计》考试形式(闭卷,考试)物理与电子工程学院系专业学号姓名题号分数评分一50二20XX0三210310总分100评卷人一、选择题(每题2分,共50分)下列每题A、b、c、D四个选项中,只有一个选项是正确的。

1、以下说法正确的是(b)A)c语言程序总是从第一个函数开始执行b)c语言程序总是从main()函数开始执行c)在c语言程序中,要调用函数必须在main()函数中定义D)c语言程序中的main()函数必须放在程序的开始部分2、若有定义intk=5;,表达式k+=k-=k*=k运算后k的值是(c)A)90b)25c)0D)-153、有输入语句:scanf(“%d,%d,%d”,为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式为(D)(其中,“□”表示空格,表示enter键)A)1□3□2b)a=1,b=3,c=2c)a=1b=3c=2D)1,3,24、以下程序段的输出是(c)printf(“|%8.5f|\\n”,3461.45);A)|61.45000|b)|3461.450|c)|3461.45000|D)|3461.4500|5、在x值处于-2≤x≤2或4≤x≤8时值为“真”否则为“假”的表达式是(D)A)(-2≤x≤2)||(4≤x≤8)b)(x m=++i;n=j++;printf(\}第1页共8页A)108b)89c)99D)987、假设所有变量均为整数,则表达式(a=2,b=5,a++,b++,a+b)的值为(c)A)7b)8c)9D)108、有以下程序,执行后输出结果是(A)#includevoidmain(){inti=1,j=1,k=2;if((j++||k++)}A)2,2,2b)2,2,1c)1,1,2D9、有如下程序,该程序的输出结果是(D)#includevoidmain(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf(\\n\);}A)a=2,b=2b)a=1,b=1c)a=1,b=010、下述程序的输出结果是:(c)#includemain(){intk=4,n=0;for(;n if(n%4!=0)continue;k--;}printf(“k=%d,n=%d\\n”,k,n);}A)k=1,n=1b)k=2,n=2c)k=3,n=4D)k=4,n=511、不正确的赋值或赋初值的方式是(b)。

第一学期《C程序设计》考试A(级)含答案

第一学期《C程序设计》考试A(级)含答案
15.设有定义:char *p;以下选项中能够使字符型指针p正确指向一个字符串的是:【 】
A) char str[ ]=”China”; p=str[0]; B) scanf(“%s”, p);
C) p=getchar();D) p=”string”;
16.阅读以下程序
#include<stdio.h>
B) struct student{ char name[20]; char sex; int age;} struct student s1;
C) struct student{ char name[20]; char sex; int age;} s1;
D) struct { char name[20]; char sex; int age;} s1;
A)k++B)k+=1C)++kD)k+1
11.以下叙述中正确的是【 】
A)break语句只能用于switch语句体中
B)continue语句的作用是:使程序的执行流程跳出包含它的所有循环
C)break语句只能用在循环体内和switch语句体内
D)在循环体内使用break语句和continue语句的作用相同
6.对于一个正常运行的C程序,以下叙述中正确的是【 】
A)程序的执行总是从main函数开始,在main函数结束
B)程序的执行总是从程序的第一个函数开始,在main函数结束
C)程序的执行总是从main函数开始,在程序的最后一个函数中结束
D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
A)大写字母B)连接符C)数字字符D)下划线
4.以下不合法的用户标识符是【 】

C语言程序设计基础测试试卷答案

C语言程序设计基础测试试卷答案

《C语言程序设计基础》测试试卷答案一、填空题(每空2分,共20分)1.定义变量bi并赋初值为33的语句为。

2.c语言中一个程序行上可以写。

3.与数学表达式,5=<x <19等价的c语言表达式为。

4.定义符号常量PT为109的命令为。

5.以知有定义int a,b,c;a=b=c=3;则表达式a++||++b>=4&&c =4运算后,c的值为。

6.字符串"abcd"在内存中的长度为。

7.c语言中,以形式来存储字符。

8.变量ch是小写字母,把它转换为大写字母的表达式是。

9.c语言的基本数据类型有整型,实型和。

10.c语言的基本组成单位是。

二、选择题(每题2分,共40分)1.下面不合法的整型常量是()A) 1919 B) 0990 C)1010 D)0xe0f72.C语言程序的基本组成单位是()A)语句B)字符C)程序行D)函数3.已知有int x=5,y=10;语句printf("%d",(x+2,x+y++));的输出结果是( )A)7,17 B)7,15 C)17 D)154.已知有float x,y;下面合法的表达式是()A)-x-- B)y=y-x C)x=y>=x D)y=x%2*25. 下面不能表示逻辑假的是()A) '\0' B)0 C)-0.0 D) '0'6.有※int x,char ch;使用语句scanf(%d,%d,&x,&ch);为x和ch输入25和字符0,正确的输入格式为()A)25 0 B)25'0' C)250 D)25,07.有int x=5;则语句printf("%d",!x+1);输入结果为()A)0 B)1 C)5 D)68.有int a=3;执行语句a+=a-=a*a;有a的值为()A)-9 B)-12 C)9 D)129.下面语句不能实现对变量x的值增1的是()A)x++ B)++x C)x+=1 D)x+110.下面说法正确的是()A)逗号表达式的值是各个表达式值之和。

一学期《C程序设计》试卷A(级)含答案

一学期《C程序设计》试卷A(级)含答案
C) p=getchar()。D) p=”string”。
16.阅读以下程序
#include <stdio.h>
voidmain()
{intcase。float printF。
printf(“请输入2个数:”)。
scanf(“%d%f”, &case, &printF)。
printf(“%d %f”, case, printF)。
C) struct student{ char name[20]。char sex。int age。} s1。
D) struct { char name[20]。char sex。int age。} s1。
15.设有定义:char *p。以下选项中能够使字符型指针p正确指向一个字符串的是:【 】
A) char str[]=”China”。p=str[0]。B) scanf(“%s”, p)。
19.以下数组定义中错误的是【 】
A)int x[][3]={0};
B)int x[2][3]={{l,2},{3,4},{5,6}};
C)int x[][3]={{l,2,3},{4,5,6}};
D)int x[2][3]={l,2,3,4,5,6};
20.定义数组int a[10],若整型类型变量长度是2个字节,数组a的首地址是0,则&a[5]的值是:【 】
C)break语句只能用在循环体内和switch语句体内
D)在循环体内使用break语句和continue语句的作用相同
12.在C语言中,函数返回值的类型最终取决于【 】
A)函数定义时在函数首部所说明的函数类型
B)return语句中表达式值的类型
C)调用函数时主函数所传递的实参类型

c语言程序设计试题及答案解析

c语言程序设计试题及答案解析

c语言程序设计试题及答案解析C语言程序设计试题及答案解析一、选择题1. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C2. C语言中,以下哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C二、填空题1. 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2. 若有以下C语言代码段:```cint a = 5, b = 10;printf("%d", a + b);```执行后输出的结果是______。

答案:15三、简答题1. 简述C语言中数组的定义和初始化方式。

答案:在C语言中,数组是一种基本的数据结构,用于存储具有相同类型的多个元素。

数组的定义方式为:类型名数组名[数组大小];初始化方式可以是静态初始化,即在定义时直接赋值,如:int arr[5] = {1, 2, 3, 4, 5}; 或者动态初始化,即在定义后使用循环或赋值语句逐一赋值。

四、编程题1. 编写一个C语言程序,实现求一个整数的阶乘。

```c#include <stdio.h>int factorial(int n) {if (n == 0)return 1;elsereturn n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d 的阶乘是:%d\n", num, factorial(num));return 0;}```五、分析题1. 请分析以下C语言代码段的运行结果,并解释原因。

```c#include <stdio.h>int main() {int x = 10;printf("%d", x++);return 0;}```答案:代码段的运行结果是10。

《C语言程序设计基础》期末考试A卷及答案

《C语言程序设计基础》期末考试A卷及答案

封 线密《C 语言程序设计基础》课程期末考试试卷 ( A 卷)班级 考试形式 闭卷 考试时间 120 分钟考试学期 2020-2021学年第1学期 考试类型 考试 命题教师 题 号一 二 三 四 总分 分 值 30 20 25 25 100 得 分一、单项选择题(每小题2分,共30分)1.下列不属于C 语言基本数据类型的是( )。

A. intB. unionC. charD. double 2. 在一个C 程序中( )。

A .main 函数必须出现在所有函数之前B .main 函数可以在任何地方出现C .main 函数必须出现在所有函数之后D .main 函数必须出现在固定位置3. 以下不正确的C 语言标识符是 ( )。

A .AB3CB .a_bc C. _abc D .3ab_c4. 设x 、y 和z 是int 型变量,且x =3,y =4,z =5,则下面表达式中值为0是 ( )。

A .x&&y||x-y B. x <=y C. x||y+z&&y<z D. !((x <y)&&!z||1)5. 设有定义:struct a{long int c[4]; float d[3]; char f[16]; }a1;则printf("%d\n",sizeof(a1));的输出是( )。

A .44B .36C .12D .326. 已知一个二维数组int a[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};获取该数组中第二行第三列元素的语句表达正确的是( )。

A .a[2][3] B. a[2][4] C. a[1][2] D. a[3][2] 7. 设有:int a,*pa,*pb;int b[10] = { 0,1,2,3,4,5,6,7,8,9 };a=3;下列说法中不正确的是( )。

华农-2015学年第1学期C语言A卷参考答案

华农-2015学年第1学期C语言A卷参考答案

C参考答案2015学年第1学期考试科目:C语言程序设计一、单项选择题(机读,每小题2分,共40分)二、判断题(机读,正确的判断涂黑“A”、错误的判断涂黑“B”每小题1分,共20分)三、阅读程序填空题(每空1分,共20分)四、编写程序题(每小题各10分,共20分)1.#include <stdio.h>#include <string.h>int main(){ char str1[80],str2[80],str3[80],temp[80];int i;printf("Input 3 Strings:\n");gets(str1); //输入3个字符串gets(str2);gets(str3);if(strcmp(str1, str2) > 0) //如果str[0]>str[1], 交换它们的值 { strcpy(temp, str1);strcpy(str1, str2);strcpy(str2, temp);}if(strcmp(str1, str3) > 0) //如果str[0]>str[2], 交换它们的值 { strcpy(temp, str1);strcpy(str1, str3);strcpy(str3, temp);}if(strcmp(str2, str3) > 0) //如果str[1]>str[2], 交换它们的值 { strcpy(temp, str2);strcpy(str2, str3);strcpy(str3, temp);}printf("After sorted: \n");puts(str1); //输出排序后的3个字符串puts(str2);puts(str3);return 0;}2.#include <stdio.h>#include <math.h>main(){ int i,temp,rmd,sum;for(i=100; i<=999; i++){ temp=i; sum=0;while(temp>0){ rmd=temp%10;sum+=pow(rmd,3); //此处若不会使用pow函数,可以用连乘替代。

大一《C语言程序设计基础》期末考试试卷及答案

大一《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)。

《C语言程序设计》本科试卷A参考答案

《C语言程序设计》本科试卷A参考答案

《C语言程序设计》本科试卷A参考答案一、选择(每题1.5分,共20题,共30分)1~5 CDCBD 6~10 ACAAB 11~15 DACCB 16~20 CBBCC二、填空(共10题,共20分;每题2空,每空1分)1、 /* */2、 6 53、 P=&x *p4、 printf() scanf()5、 a[0] a[2]=a[0]+a[1]6、跳出整个循环结束本次循环7、 3 48、选择循环9、嵌套递归10、fopen() fclose()三、程序分析(每题5分,共2题,共10分)1、输出交换前后a,b的值。

2、已知a=3,b=4,选择四则运算的一种进行计算。

注:回答正确一个给2分,两个全部正确给5分。

四、编程(每题5分,共8题,共40分)1、 #include "stdio.h"void main(){int i,s1=0,s2=0;(1分)for (i=1;i<100;i++){s1=s1+i; (1分)if(i%2==1) (1分)s2=s2+i; (1分)printf(“%d ”,s); (1分)}2、#include "stdio.h"void main(){ int i,a[10]; (1分)for(i=0;i<=9;i++)scanf(“%d”,&a[i]);(2分)for(i=9;i>=0;i--)printf(“%d”,a[i]); (2分)}3、 #include "stdio.h"void main(){ int a,b,c;scanf(“%d%d%d”,&a,&b,&c); (1分)if(a>b) t=a; a=b; b=t;if(a>c) t=a; a=c; c=t;if(b>c) t=b; b=c; c=t; (3分)printf(“\ na=%d,b=%d,c=%d”,a,b,c); (1分)}4、 #include "stdio.h"void main(){ int i,j;for (i=1;i<=5;i++){for (j=1;i<=i;j++)printf(“*”); (4分)printf(“\n”); (1分)}5、 #include "stdio.h"void main(){char c; (1分)c=getchar(); (1分)//printf(“%c”,&c); c=c-32 ;(2分)printf("%c",c); (1分)}6、 #include "stdio.h"void main(){ int x,y;scanf(“%d”,&x); (1分)if(x>=1) y=x+1;else y=x-1; (3分)printf(“\ nx=%d,y=%d”,x,y); (1分)}7、 #include "stdio.h"void main(){ int a[6]={11,12,13,14,15,16};int x; (1分)x=a[1]+a[3]+a[5]; (3分)printf(“\ nx=%d”,x); (1分)}答案不唯一。

《C语言程序设计》课后习题参考答案

《C语言程序设计》课后习题参考答案
for(i=1;i<=n;i++)
{
t=t+i;
s=s+t;
}
printf("s=%d\n",s);
}
习题
一、选择题
1.B 2.A 3.A 4.D 5.C 6.B 7.A 8.A
二、填空题
1.按行的顺序依次存放的
2.0
3.4
4.6
三、编程题
1.有一个多项式:Pn(x)=a0xn+a1xn-1+…+an
2.0 1
3.1
4.4
5.-1
三、编程题
1.给出等级成绩′A′、′B′、′C′、′D′、′E′,假设,90分以上为′A′,80~89分为′B′,70~79分为′C′,60~69分为′D′,60分以下为′E′,输入一个等级成绩,问属于哪一个分数段。
参考代码如下:
main()
{
int score,m,n;
scanf("%d",&n);
for(i=0;i<5;i++)
if(n>a[i])
continue;
else
break;
for(j=4;j>=i;j--)
a[j+1]=a[j];
a[i]=n;
for(i=0;i<6;i++)
printf("%d,",a[i]);
printf("\n");
}
4.编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则输出no found。
二、填空题
1. BASIC、FORTRAN、AL_GOL60和COBOL

南京信息工程大学2009-2010(1)C语言期末考试试卷A(后附答案)

南京信息工程大学2009-2010(1)C语言期末考试试卷A(后附答案)

南京信息工程大学试卷2009 - 2010 学年第 1学期程序设计基础/C语言程序设计课程试卷( A 卷) 本试卷共 9 页;考试时间 120分钟;任课教师;出卷时间 2010 年 1月学院专业2009 年级班学号姓名得分一、单项选择题 (每小题 1分,共 12分)1.一个C程序的执行是从A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束2.下面四个选项中,均是不合法的用户标识符的选项的是A. A p_o doB. float lao _AC. b-a while intD. _123 temp INT3.表达式18/4*sqrt(4.0)/8值的数据类型为A.floatB. charC.doubleD.不确定4.设有如下定义struct ss{ char name[10];int age;char sex;}std[3],*p=std;下面各输入语句中错误的是。

A.scanf("%d",&(*p).age); B.scanf("%s",&);C.scanf("%c",&std[0].sex); D.scanf("%c",&(p->sex));5.有如下定义:int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23},(*p)[4];下面表示正确的是A.p=a[0]; B.p=*a;C.p=&a[0][0]; D.p=a;6.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。

A.(x>=1) && (x<=10) && (x>=200) && (x<=210)B.(x>=1) | | (x<=10) | | (x>=200) | | (x<=210)C.(x>=1) && (x<=10) | | (x>=200) && (x<=210)D.(x>=1) | | (x<=10) && (x>=200) | | (x<=210)7.以下程序段的循环次数是。

《C语言程序设计基础》习题集(含答案)

《C语言程序设计基础》习题集(含答案)

第一章C语言概述1.1、选择题(1)一个C语言程序是由()组成。

A. 一个主程序及若干个子程序B. 一个主程序C. 一个主函数及若干个子函数D. 一个主函数(2) 一个C语言程序总是从()开始执行。

A. 主过程B. 主函数C. 子程序D. 主程序(3) main函数在源程序中的位置()。

A. 必须在最开始B. 必须在子函数的后面C. 可以任意D. 必须在最后(4) 一个C程序的执行是从()。

A. 本程序的第一个函数开始,到最后一个函数结束B. 本程序的main函数开始,到最后一个函数结束C. 本程序的main函数开始,通常也在main函数结束D. 本程序的第一个函数开始,到main函数结束(5) 以下叙述不正确的是()。

A. 一个C程序可由一个或多个函数组成B. 一个C程序必须包含一个main函数C. 在C程序中,注释只能位于一条语句的最后面D. C程序的基本组成单位是函数1.2、编程题(1)参照本章例题,编程输出如下信息:**********Very good!**********(2)编写一个C程序,输出以下信息:******Turbo C ** * * * *1.3 请根据自己的认识,写出C语言的主要特点。

1.4 简述C程序主要由哪些部分构成?1.5 用户编写的C程序上机运行要经过哪些步骤?第二章基本数据类型和表达式2.1 单项选择题(1) 以下不能用作变量名的是()A)_26 B)case C)scanf D)Double(2) 以下合法的八进制数是()A)0135 B)068 C)013.45 D)o7(3) 若变量已正确定义,以下非法的表达式是()A)a/=b+c B)a%(4.0) C)a=1/2*(x=y=20,x*3) D)a=b=c (4) 设x 为int 类型,其值为11,则表达式:(x++*1/3)的值是()A)3 B)4 C)11 D)12(5) 若题中各变量已正确定义并赋值,下面符合C 语法的表达式是()A )a%=7.6; B)a++,a=7+b+c C)int(12.3)%4 D)a=c+b=a+7 (6) 设k 和x 均为int 型变量,且k=7,x=12,则能使值为3的表达式是()A)x%=k%=5 B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)- (k%=5) (7) 能正确表示数学公式|)sin(|x ,的C 语言表达式是()A)sqrt(abs(sin(x*π/180)))B)sqrt(abs(sin(x*3.14/180))) C)sqrt(sin(x))D)sqrt (fabs (sin(x*3.14/180)))(8) 以下变量x 、y 、z 均为double 型且已正确赋值,不能正确表示代数式z y x的C 语言表达式是()A)x/y*z B)x*(1/(y*z)) C)x/y*1/z D)x/y/z (9) 以下叙述中正确的是()A ) A )C 程序中,赋值运算符的优先级最低。

C语言程序设计A卷(答案)

C语言程序设计A卷(答案)

贵州大学2010-2011学年第二学期考试试卷A(答案)C语言程序设计注意事项:1.请考生按要求在试卷装订线内填写姓名、学号和年级专业。

2.请仔细阅读各种题目的回答要求,在规定的位置填写答案。

3.不要在试卷上乱写乱画,不要在装订线内填写无关的内容。

4.满分100分,考试时间为120分钟。

一.单项选择题(本大题共20小题,每小题1分,共20分)1.以下描述中不属于C语言特点的是(B )。

A.预算符丰富B.不允许直接访问物理地址C.语法限制不太严格D.是完全模块化和结构化语言2.在C语言中,回车符是(A )。

A.\n B.\t C.\f D.\b3.下列类型不属于基本类型的是(B )。

A.整形B.指针类型C.浮点型D.空类型4.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符(C )。

A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字和下划线中任意字符5.下列数据中,不合法的C语言实型数据的是(C )。

A.0.123 B.123e3 C.2.1e3.5 D.789.0 6.下列二进制数据中,-10的补码是( D )。

A.1111111111111001 B.1111111111111100 C.1111111111111010 D.11111111111101107.若变量已正确定义并赋值,以下符合C语言语法的表达式是(B )。

A.a:=b+1 B.a=b=c+2 C.int 18.5 D.a=c+7=c + b 8.以下说法不正确的是(B )。

A.实参可以是常量、变量、表达式B.形参可以是常量、变量、表达式C.实参可以为任意类型D.形参应与对应的实参一致9.下面的运算符中,优先级最高的运算符是( C )。

A.<= B.= C.% D.&&10.初始化i=2,表达式(++i)*3+(i++)的值等于(B )A.11 B.12 C.13 D.1411.以下对二维数组a的正确说明是(C )。

C语言程序设计习题与参考答案

C语言程序设计习题与参考答案

习题与参考答案第1章 C语言程序设计基础思考与练习一、填空题1、C程序是由构成的,一个C程序中至少包含。

2、C程序的注释是由和所界定的文字信息组成的。

3、开发一个C程序要经过编辑、、和运行4个环节。

4、C语言中,头文件的扩展名是。

5、C语言源程序的扩展名;经过编译后,生成文件的后缀是;经过连接后,生成文件的扩展名是。

二、简答题1、简述C语言程序的运行步骤。

2、软件编程中的可读性原则一般包括那些内容?3、什么是算法?算法的特点有哪些?4、参照本章例题,编写一个C程序,输出以下内容。

**************************************************Hello,world!**************************************************5、写出算法。

已知圆的半径,求周长和面积。

第1章思考与练习参考答案一、填空题1、函数、一个主函数main()2、/*、*/3、编译、连接4、.h5、.c、.obj、.exe二、简答题1、简述C语言程序的运行步骤。

答:(1)编辑C程序源文件;(2)编译,将编辑好的源程序文件“*.c”,翻译成二进制目标代码文件“*.obj”;(3)连接,将编译生成的各个目标程序模块和系统或第三方提供的库函数“*.lib”连接在一起,生成可以脱离开发环境、直接在操作系统下运行的可执行文件“*.exe”;(4)运行程序。

如果运行出错,这说明程序处理的逻辑存在问题,需要再次回到编辑环境针对程序出现的逻辑错误进一步检查、修改源程序,重复编辑→编译→连接→运行的过程,直到取得预期结果为止。

2、软件编程中的可读性原则一般包括那些内容?答:1.编程规范概要(1)程序结构清晰,简单易懂,单个函数的程序行数不得超过100行。

(2)打算干什么,要简单,直截了当,代码精简,避免垃圾程序。

(3)尽量使用标准库函数和公共函数。

(4)不要随意定义全局变量,尽量使用局部变量。

C语言程序设计期末试题A及答案

C语言程序设计期末试题A及答案

C语言程序设计期末试题A及答案C语言程序设计教程期末考试试卷(A卷)(考试时间90分钟,满分100分)一、选择题(本大题共20题,每题2 分,共40分)下面各题A.B.C.D四个选项中,只有一个选项是正确的,请将正确选项涂抹在答题卡相应的位置上,答在试卷上不得分。

1. 以下不是C语言的特点的是( )A. C语言简洁、紧凑B. 能够编制出功能复杂的程序C. C语言可以直接对硬件进行操作D. C语言移植性好2. 以下不正确的C语言标识符是( )A. ABCB. abcC. a_bcD. ab.c3. 一个C语言程序是由( )A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成4. 一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A. 有零个或多个输入B. 有零个或多个输出C. 有穷性D. 可行性5. 设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A. intB. floatC. doubleD. 不确定6. 在C语言中,char型数据在内存中的存储形式是( )A. 补码B.反码C.源码D.ASCII码7. 有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。

#includemain(){int x;float y;scanf("%3d%f",&x,&y);}A. 12345B. 123C. 45D. 3458. 若有以下定义int a,b; float x,则正确的赋值语句是( )A. a=1,b=2B. b++;C. a=b=5D. b=int(x);9. 以下程序的执行结果是( )#include{int i=10,j=10;printf("%d,%d\n",++i,j--);}A. 11,10B. 9,10C. 11,9D. 10,910. 已知字母A的ASCII码是65,以下程序的执行结果是( )#includemain(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A. A,YB. 65,65C. 65,90D. 65,8911. 下列运算符中优先级最高的是( )A. <B. 十C. %D. !=12. 设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。

第五届全国ITAT C语言程序设计A卷答案

第五届全国ITAT  C语言程序设计A卷答案

第五届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计A卷1、编程解决如下数学问题:有12升水,怎样利用一个8升和一个5升的容器将水分为两个6升?要求以如下格式打印出分水步骤。

(20分)a12 b8 c512 0 0* * * (“*”表示当前状态下每个容器的盛水量)......0 6 6#include<stdio.h>void main(){int a12=12,b8=0,c5=0;printf("a12 b8 c5\n%-5d%-4d%-4d\n",a12,b8,c5);while(a12!=6 || b8!=6){if(b8==0){a12-=8;b8=8;}else if(b8==8){b8-=(5-c5);c5=5;}else if(c5==0){if(b8>=5){b8-=5;c5=5;}else{c5=b8;b8=0;}}else if(c5==5){a12+=5;c5=0;}printf("%-5d%-4d%-4d\n",a12,b8,c5);}}2、编程实现:有二维数组a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}},将数组a的每一行元素均除以该行上的主对角元素(第1行同除以a[0][0],第2行同除以a[1][1],...),按行输出新数组。

(20分)#include<stdio.h>int main(){double a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}};double (*p)[3]=a,div;size_t i,j;for(i=0;i<3;i++){div=*(*(p+i)+i);for(j=0;j<3;j++)*(*(p+i)+j)/=div;}for(i=0;i<3;i++){putchar('\n');for(j=0;j<3;j++)printf("%lf ",a[i][j]);}putchar('\n');return 0;}3、编程:设x取值为区间[1,20]的整数,求函数f(x)=x-sin(x)- cos(x)的最大值,要求使用自定义函数实现f(x)功能。

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

《c语言程序设计基础》试卷 (A卷)考试时间:90分钟闭卷任课老师:班级:学号:姓名:成绩:(每小题2分,共30分)、由C++源文件编译生成的目标文件的缺省扩展名为()A、cppB、exeC、objD、lik2、下列中,不是C++合法的标识符()A、2mnB、m123C、kkD、a_13、C++中,基本数据类型不包括()A、intB、floatC、charD、class4、x和y均为bool量,则x| |y为真的条件是()A、它们均为真B、其中一个为真C、它们均为假D、其中一个为5、C++中,一个字符型数据在内存中占()字节。

A、4B、2C、1D、86、字符串常量”hello”的长度是()A、5B、6C、7D、87、以下语句,int i=2,j=2,m,n;m=i++;n=++j;则m,n,i,j的值分别为()A、2,3,2,2B、2,3,3,3C、2,2,3,3D、3,3,2,28、假定a为一个整型数组名,则元素a[4]的字节地址为()A、a+4B、a+8C、a+16D、a+329、 x>0 || y==5的相反表达式为()。

A、 x<=0 || y!=5B、 x<=0 && y!=5C、 x>0 || y!=5D、 x>0 && y==510、在下面的函数声明中,存在着语法错误的是()A、void BC(int a , int)B、void BD(int , int)C、void BE(int , int=5)D、int BF(int x ; int y)11、循环体至少被执行一次的语句为()。

A、for循环B、while循环C、do循环D、任一种循环12、已知一函数中有下列变量定义,其中属于静态变量的是()A、int a=5;B、static double b;C、register char c;D、auto short d;13、do语句能够改写为()语句。

A、复合B、ifC、switchD、 while14、要使语句: p=new int[10]; 能够正常执行,p应定义为()A、int p;B、int p[10];C、int *p;D、int (*p)[10];15、编写C++程序一般需经过的几个步骤依次是( )。

A、编译、编辑、连接、调试B、编辑、编译、连接、调试C、编译、调试、编辑、连接D、编辑、调试、编辑、连接二、填空题(每小题1分,共10分)1、使用const 语句定义一个标识符常量时,则必须对它同时进行。

2、用于输出表达式值的标准输出流对象是_________,用于从键盘上为变量输入值的标准输入流对象______。

3、在每个C++程序中都必须包含有这样一个函数,该函数的函数名为。

4、在C++语言中,用转义字符序列或操纵符表示输出一个换行符。

5、假定一个枚举型的定义为”enum RB{ab,ac=3,ad,ae}x=ad;”,则x的值为。

6、设px是指向一个类动态对象的指针变量,则执行“delete px;”语句时,将自动调用该类的。

7、关系表达式x+y>5的相反表达式为8、空串的长度为___,存储它需要占用___个字节。

9、表达式: x=625,i=(x>100?10:100) 的值是。

10、C++语言中的每条基本语句以作为结束符,每条复合语句以作为结束符。

三、写出下列每个函数的功能(每小题4分,共20分)1、#include<math.h>bool SG(int x) {/ /x为大于等于2的整数int a=int(sqrt(x));/ /取x的平方根int i=2;while(i<=a) {if(x%i= =0) break;i+ +;}if(i<=a)return 0;else return 1;}2、#include <iostream.h>int SC(int a,int b,int c){if(a>=b && a>=c) return a;if(b>=a && b>=c) return b;if(c>=a && c>=b) return c;}3、#include <math.h>bool SG(int x){int a=int(sqrt(x));int i=2;while(i<=a){if(x%i==0) break;i++;}if (i<=a) return 0;else return 1;}4、int SC(int a,int b,int c) {if(a>=b && a>=c) return a;if(b>=a && b>=c) return b;if(c>=a && c>=b) return c;}四、阅读下列程序,在处填入适当内容,使程序完整(每个空1分,共10分,)1、下面函数是求两个整型参数a和b的最小公倍数。

int f2(int a, int b){int i=2, p=1;do {while(a%i==0 && ___(1)___) {p*=i; a/=i; b/=i; }___(2)___;}while(a>=i && ___(3)___);return p*a*b; }2、打印出2至99之间的所有素数(即不能被任何数整除的数)。

#include<iostream.h>#include<math.h>void main(){int i,n;for(n=2; ___(1)___; n++) {int temp=int(sqrt(n)); //求出n的平方根并取整for(i=2; ___(2)___; i++)if(n%i==0) ___(3)___;if(i>temp) cout<<n<<' '; }cout<<'\n';}3、采用辗转相除法求出两个整数的最大公约数。

#include<iostream.h>void main(){int a,b;cout<<"请输入两个正整数:";cin>>a>>b;while(a<=0 || __(1)___) {cout<<"重新输入:"; cin>>a>>b;} while(b) {int__(2)__;r=a%b;___(3)___; ___(4)___; //分别修改a和b的值} cout<<a<<endl; //输出最大公约数 }五、写出下列程序的运行结果(每小题5分,共30分)1、main ( ){ int a=4,x=5,b=8;fun(b,6);printf("%d,%d,%d\n",a,b,x);}fun (int a,int b){ int x=3;printf("%d,%d,%d\n",a,b,x);}运行结果:2、#include<iostream、h>void SB(char ch){switch(ch){case 'A':case 'a':cout<<"well!";break;case 'B':case 'b':cout<<"good!";break;case 'C':case 'c':cout<<"pass!";break;default:cout<<"bad!";break;}}void main(){char a1='b',a2='C',a3='f';SB(a1);SB(a2);SB('A');cout<<endl;}运行结果:3、#include<iostream、h>#include<stdlib、h>double SD(int a,int b,char op){ double x;switch(op){case '+':x=double(a)+b;break;case '-':x=double(a)-b;break;case '*':x=double(a)*b;break;case '/': if (b) x=double(a)/b;else exit(1);break;default:exit(1);}return x;}void main(){int x=20,y=12;cout<<SD(x,y,'-')<<' ';cout<<SD(x,y,'*')<<' ';cout<<SD(x+y,y-2,'/')<<endl;} 运行结果:4、#include<iostream、h>void main(){int s=0;for(int i=1;i<6;i++)s+=i*i;cout<<"s="<<s<<endl;}运行结果:5、 main( ){ int x=7,y;if(x<5) y=x;else if(x<10) y=2*x+1;else y=3*x-1;printf(“%d\n”,y);} 运行结果:6、 main( ){int i,j;for(i=1;i<=3;i++){for(j=1;j<=i;j++)printf(“%d”,j);printf(“\n”);}}运行结果:以下为本试卷的参考答案一、选择题(30分,每小题2分)1、( C )2、( D )3、( D )4、( A )5、( C )6、( B )7、( A )8、( A )9、( B ) 10、( B )11、( C ) 12、( B ) 13、( D ) 14、( C ) 15、( B )二、填空题(10分,每小题1分)1、声明2、 cout、cin3、 main4、‘\n’,endl5、 46、动态内存7、x+y<5||x+y==58、 0 19、10 10、; {}三、写出下列每个函数的功能(20分,每小题4分)1.判断整数x是否为质数,若为质数返回true,若不是则返回false。

相关文档
最新文档