C语言程序设计课题作业(一)
一、简答题
1、C++单词包含哪些种类?
2、一个标识符中的首字符必须是什么字符?其余位置上的字符必须是什么字符?
3、数值常量、字符常量、字符串常量和标识符在表示上各有什么区别?
4、C语句分为哪几种类型?
5、#include命令的格式和功能各是什么?使用尖括号和双引号在含义上有什么区别?
二、选择题
1、程序中的预处理命令是指以( )字符开头的命令。
A.@    B.#    C.$    D.%
2、一条简单语句是以( )字符作为结束符的。
A. ,
B. :
C. ;
D. <;空格>
3、空白符是( )符的统称。
A.空格、制表、回车
B.空格、制表、逗号
C.空格、回车、分号
D.冒号、制表、回车
4、#imclude命令中不可以包含( )。
A.头文件
B.程序文件
C.用户头文件
D.目标文件
5、一个函数定义由( )两部分组成。
A.函数头和函数体
B.函数头和函数尾
C.函数原形和函数体
D.函数名和参数表
6、一个程序中必须有并且只有一个命名为( )的函数。
A.Main
B.main
C.cpp
D.c
7、C程序文件的扩展名为( )。
A.obj
<
C.void
D.intmain
8、在VC环境下,为运行一个程序而建立的工作区文件的扩展名为( )。
A.obj
<
C.dsw
D.dsp
9、数据类型int,char,float,double的类型长度之和为( )。
A.10
B.12
C.16
D.17
10、常数120和-4.205的类型为( )。
A.整形和双精度型
B.短整型和单精度型
C.长整型和双精度型
D.整型和单精度型
C语言程序设计课题作业(二)
一、选择题
1、流程控制类语句包括( )3类语句。
A.选择、循环、跳转
字符串长度头文件B.选择、循环、输入
C.选择、输入、输出
D.循环、选择、函数
2、在switch语句中,每个语句标号中的关键字case后面的表达式必须是( )。
A.变量
B.常量
C.一般表达式
D.函数调用
3、作为语句标号使用的C保留字case和default只能用于( )语句中。
A.if
B.for
C.switch
D. while
4、在for语句中,假定循环体共被执行n次,则<;表达式2>共被计算( )次。
A.1
B. n-1
C. n
D. n+1
5、在所有结构中执行到( )语句时,只结束本层循环类语句或switch语句的执行。
B.break
<
6、数组元素a[i]是该数组中的第( )个元素。
A.i
B.i+1
C.i-1
D.2*i
7、元素类型为int的数组a[10]共占用( )字节的存储空间。
A.10
B.20
C.40
D.80
8、字符串”\’a\’xy=n”的长度为( )。
A.8了
B.9
C.10
D.11
9、对于一个长度为n的字符串,需要占用( )个字节。
A.n
B. n-1
C. n+1
D. n+2
10、若需要把一个字符串”aaa”赋值到字符数组a中,则需要进行( )的函数调用实现。
A.srtlen
B.strcmp
C.strcat
D.strcpy
A.B.C.D.
二、根据下题目要求编写程序并上机调试和运行
1、编一程序,首先输入10个字符串到一个二维字符数组中,接着输入一个待查的字符串,
然后从二维字符数组中查统计出含有待查字符串的个数。
2、从键盘上输入一行字符串,假定该字符串的长度不超过50,试统计出该串中第一种十进制数字字符的个数并输出。
3、首先从键盘上办入N个学生的M门课程的成绩,然后计算并输出每个学生的总成绩和平均值。
C语言程序设计课题作业(三)
一、选择题
1. C语言源程序文件的缺省扩展名为(    )。
A. cpp
B. exe
C. obj
D. C
2.设x和y均为逻辑值,则x && y为真的条件是(    )。
A. 它们均为真
B. 其中一个为真
C. 它们均为假
D. 其中一个为假
3. 在下列的符号常量定义中,正确的定义格式为()。
A. #define M1
B. const int M2 20
C. #define M3 10
D. const char mark
4. for循环语句能够被改写为()语句。
A. 复合
B. if
C. switch
D. while
5. 在下面的一维数组定义中,错误的定义格式为()。
A. int a[]={1,2,3}
B. int a[10]={0}
C. int a[]
D. int a[5]
6.下面的函数原型声明中存在语法错误的是()。
A. AA(int a, int b)
B. AA(int, int)
C. AA(int a; int b;)
D. AA(int a, int)
7. 假定a为一个数组名,则下面存在错误的表达式为的()。
A. a[i]
B. *a++
C. *a
D. *(a+1)
8. 假定有定义为“int a[10], x, *pa=a;”,若要把数组a中下标为3的元素值赋给x,则不正确的赋值为()。
A. x=pa[3]
B. x=*(a+3)
C. x=a[3]
D. x=*pa+3
9.char类型的长度为________个字节。
A. 1
B. 2
C. 3
D. 4
10. 向一个二进制文件中写入信息的函数为()。
A. fgets()
B. fputs()
C. fread()
D. fwrite()
二、填空题
1. C语言中的每条复合语句以________作为结束符。
2. 在#include命令中所包含的文件,可以是头文件,也可以是________文件。
3. 十进制数35对应的八进制数为________。
4. 假定x=5,则表达式2+x++的值为________。
5.增量表达式++y表示成赋值表达式为__________。
6.若x=5,y=10,则x>y的值为________。
7. 假定二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为________。
8. 执行“typedef int ABC[10];”语句把ABC定义为具有10个整型元素的________类型。
9. strcat()函数用于________两个字符串。
10.假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为________。
11. 若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为________。
12. NULL是一个符号常量,通常作为空指针值,它对应的值为________。
13. 假定要动态分配一个类型为struct Worker的对象,并由r指针指向这个对象,则使用的表达式为 ________________ =malloc(sizeof(struct Worker))。
三、写出下列每个程序运行后的输出结果
1. #include<stdio.h>
void main() {
int i,s=0;
for(i=1;i<6;i++) s+=i*i;
printf(“s=%d\n”,s);
}
2. #include<stdio.h>
#define N 6
void main()
{
int i,a[N]={2,5,8,10,15,21};
for(i=0; i<N; i++)
if(a[i]%5) printf("%d ",a[i]);
printf("\n");
}
3.#include<stdio.h>
void main()
{
int x ;
printf(”输入一个整数:”);
scanf("%d ",&x);
while(x){
int k=x%10;
printf("%c ",k+48);
x=x/10;
}
printf("\n");
}
四、按题目要求编写程序或函数
1. 编写一个程序,输出50以内(含50)的、能够被3或者5整除的所有整数。
2. 编写一个递归函数“int FF(int a[], int n)”,求出数组a中所有n个元素之积并返回。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。