吉林大学C语言题库

吉林大学C语言题库
吉林大学C语言题库

Addbc cabdb cbddc dbbdb adbcb bbcca baaaa bcacc

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

功能:功能:定义一个结构变量(包括年、月、日)计算给定日期是该年的第几天。

-------------------------------------------------------*/

#include

#include

main()

{

/***********SPACE***********/

【?】date

{

int y,m,d;

}da;

int f,n,p,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};

printf("y,m,d=");

scanf("%d,%d,%d",&da.y,&da.m,&da.d);

/***********SPACE***********/

f=da.y%4==0&&da.y%100【?】0||da.y%400==0;

/***********SPACE***********/

if(da.m<1【?】da.d>12) exit(0);

a[11]+=f;

if(da.d<1||da.d>a[da.m-1]) exit(0);

/***********SPACE***********/

for(n=【?】,p=1;p

printf("n=%d\n",n);

}

/*-------------------------------------------------------

【程序改错】

---------------------------------------------------------

题目:下列给定程序中函数fun的功能是:把从主函数中输入的3个数,最大的数放在a中,中间的数放在b中,最小的数放在c中。

例如:若输入的数为:551234,输出的结果应当是:a=55.0,b=34.0,c=12.0。

-------------------------------------------------------*/

#include

void fun(float *a,float *b,float *c)

{

/***********FOUND***********/

float *k;

if( *a<*b )

{

k=*a;

*a=*b;

*b=k;

}

/***********FOUND***********/

if( *a>*c )

{

k=*c;

*c=*a;

*a=k;

}

if( *b<*c )

{

k=*b;

*b=*c;

*c=k;

}

}

main()

{

float a,b,c;

printf("Input a b c: ");

scanf("%f%f%f",&a,&b,&c);

printf("a = %4.1f, b = %4.1f, c = %4.1f\n\n",a,b,c);

fun(&a,&b,&c);

printf("a = %4.1f, b = %4.1f, c = %4.1f\n\n",a,b,c);

}

/*-------------------------------------------------------

【程序设计】

---------------------------------------------------------

题目:规定输入的字符串中只包含字母和*号。请编写函数fun,其功能

是:除了字符串前导的*号之外,将串中其它*号全部删除。

在编写函数时,不得使用C语言提供的字符串函数。

例如:字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容

应当是:****ABCDEFG。

注意:请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

-------------------------------------------------------*/

#include

void wwjt ();

void fun( char *a )

{

/**********Program**********/

/********** End **********/

}

main()

{

char s[81];

printf("Enter a string:\n");

gets(s);

fun( s );

printf("The string after deleted:\n");

puts(s);

wwjt();

}

void wwjt ()

{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE *in, *out ;

int i ; char s[81] ;

in=fopen("in.dat","r");

if(in==NULL)

{

printf("Please Verify The Currernt Dir..It May Be Changed");

}

out=fopen("out.dat","w");

if(out==NULL)

{

printf("Please Verify The Current Dir.. It May Be Changed");

}

for(i = 0 ; i < 10 ; i++)

{

fscanf(in, "%s", s) ;

fun(s) ;

fprintf(out, "%s\n", s) ;

}

fclose(in) ;

fclose(out) ;

}

(完整版)c语言函数练习题附答案

函数 一、选择题 1.在c语言中以下不正确的说法是:() A.实参可以是常量、变量、或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 2.以下程序有语法性错误,有关错误原因的正确说法是:() int main() { int G=5,k; void prt_char(); …… k=prt_char(G); …… } A.语句void prt_char();有错,它是函数调用语句,不能用void说明 B.变量名不能使用大写字母 C.函数说明和函数调用语句之间有矛盾 D.函数名不能使用下划线 3.以下正确的说法是:() A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可嵌套 C.函数的定义和调用均不可以嵌套 D.函数的定义和调用均可以嵌套 4.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是:() A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 5.以下所列的各函数首部中,正确的是:() A、 void play(var :Integer,var b:Integer) B、 void play(int a,b) C、 void play(int a,int b) D、 Sub play(a as integer,b as integer) 6.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是:() A、地址传递 B、单向值传递 C、由实参传给形参,再由形参传回实参 D、传递方式由用户指定 7.有以下程序 void fun (int a,int b,int c) { a=456; b=567; c=678;}

C语言函数练习题及答案

1 【单选题】 在下列关于C函数定义的叙述中,正确的是A、 函数可以嵌套定义,但不可以嵌套调用; B、 函数不可以嵌套定义,但可以嵌套调用; C、 函数不可以嵌套定义,也不可以嵌套调用; D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:分

2 【单选题】 下面函数调用语句含有实参的个数为nc((exp1,exp2),(exp3,exp4,exp5)); A、 1 B、 2 C、 4 D、 5

我的答案:B得分:分 3 【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的A、 函数定义时指定的类型; B、 return语句中的表达式类型; C、 调用该函数时的实参的数据类型; D、 形参的数据类型;

我的答案:A得分:分 4 【单选题】 以下关于函数叙述中,错误的是 A、 函数未被调用时,系统将不为形参分配内存单元; B、 实参与形参的个数必须相等,且实参与形参的类型必须对应一致; C、 当形参是变量时,实参可以是常量、变量或表达式; D、

如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间; 我的答案:B得分:分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是A、 实参与其对应的形参共享内存存储单元; B、 只有当实参与其对应的形参同名时才共享内存存储单元; C、 实参与对应的形参分别占用不同的内存存储单元;

D、 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是 A、 实参将地址传递给形参,并释放原先占用的存储单元; B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; C、 实参将值传递给形参,调用结束时形参再将其值回传给实参;

C语言函数题库及答案

C语言函数题库及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

第六部分函数 一、单项选择题 1.C语言中的函数返回值的类型是由(D)决定 A.return语句中的表达式B.调用函数的主调函数 C.调用函数时临时D.定义函数时所指定的函数类型 2.下面不正确的描述是(B)。 A.调用函数时,实参可以是表达式 B.调用函数时,实参和形参可以共用内存单元 C.调用函数时,将形参分配内存单元 D.调用函数时,实参与形参的类型必须一致 3.在C语言中,调用一个函数时,实参变量和形参变量之间的数据传递是 (D) A.地址传递B.值传递 C.由实参传递给形参,并由形参传回给实参D.由用户指定传递方式 4.下面的函数调用语句中含有(A)个实参 inta,b,c; intsum(intx1,intx2); …… total=sum((a,b),c); A.2B.3C.4 D.5 5.在C语言中(C) A.函数的定义可以嵌套,但函数的调用不可以嵌套

B.函数的定义和调用均不可以嵌套 C.函数的定义不可以嵌套,但是函数的调用可以嵌套 D.函数的定义和调用均可以嵌套 6.关于C语言中的return语句正确的是(C) A.只能在主函数中出现 B.在每个函数中都必须出现 C.可以在一个函数中出现多次 D.只能在除主函数之外的函数中出现 7.两个形参中,第一个形参为指针类型、第二个形参为整型,则对函数形参的说明有错误的是(D) (floatx[],intn) (float*x,intn) (floatx[10],intn) (floatx,intn) 8.在C语言中,函数的数据类型是指(A) A.函数返回值的数据类型 B.函数形参的数据类型 C.调用该函数时的实参的数据类型 D.任意指定的数据类型 9.已知如下定义的函数: fun1(a) {printf("\n%d",a); } 则该函数的数据类型是(C)

东北大学机械学院C语言考试题库与答案

东北大学机械学院C语言答案 题目:根据下面的函数关系,对输入的每个x值,计算出相应的y值并输出结果。 5 题目:输入一个整数,当为65时显示A,66时显示B,68时显示C,其他值时显示END。(可选用switch语句编写) 6 题目:编写程序将用 户输入的字母进行大小写转换。 7 题目:编程判断输入的正整数是否即是5的倍数又是7的倍数。若是则输出该数;否则输出-1。 8 题目:输入一个整数,判断它是奇数还是偶数并输出。 9 题目:从键盘输入二个整数a、b,将其按大到小排列。 10 题目:找出不超过1000的十位数字为1,个位数字为3或7的所有数。例如:13、17、113、317等。 11 题目:输入一个整数,判断该数是否能被3,5,7整除,并输出以下信息之一: (1)能同时被3,5,7整除; (2)能被其中两数(要指出哪两个)整除; (3)被其中一个数(要指出哪一个)整除; (4)不能被3,5,7任一个整除。 12 题目:输入一个5位的正整数,判定该正整数是否为一个回文数。(所谓回文素数是指正读和反读都相同的数,例如12321)。 13 题目:假设变量a、b、c为整数,从键盘读入a、b、c的值,当a为1时显示b与c之和,a为2时显示b与c之差,a为3时显示b与c之积,a为4时显示b/c之商,其他数值不做任何操作。 14 题目:输入一个整数,将其数值按小于10,10~99,100~999,1000以上分类并显示(例如:输入358时,显示358 is 100 to 999)。 15 题目:从键盘读入三角形三边,判断能否组成三角形,若可以组成三角形,输出三角形的面积。 16 题目:从键盘读入三角形三边,判断能否组成三角形,若可以组成三角形,输出三角形的类型(等边、等腰、直角、一般)。 17 题目:计算二次方程的根。

C语言_函数习题

函数习题 1.以下函数值的类型是________。 fun(float x) { float y; y=3*x-4; return y; } A)int B)不确定 C)void D)float 正确答案:A(知识点:函数的定义) 试题分析:在函数定义时,函数名前没有函数类型,则默认函数类型为int类型。 2.有如下函数调用语句: fun(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是________。 A)3 B)4 C)5 D)有语法错 正确答案:A(知识点:函数的调用) 试题分析:在该函数调用中,含有的实参个数是3个。其中,第二个实参是rec2+rec3,是一个算术表达式,第三个实参是(rec4,rec5),是一个逗号表达式。如果实参是表达式,则首先计算表达式的结果,再将表达式的值传递给形参。 3.请在以下程序第一行的填空处填写适当内容,使程序能正确运行。________ (double,double)

main() { double x,y; scanf("%lf%lf",&x,&y); printf("%lf\n",max(x,y)); } double max(double a,double b) {return(a>b?a:b);} 正确答案:double max(知识点:函数的声明) 试题分析:当被调用的函数定义处在函数调用后且不为int类型时,在函数调用前必须对被调用函数进行声明。对函数进行声明有下列三种形式: (1)类型名函数名(类型1 形参1,类型2 形参2,…,类型n 形参n); (2)类型名函数名(类型1,类型2,…,类型n); (3)类型名函数名(); 4.以下程序的输出结果是________。 t(int x,int y,int cp,int dp) { cp=x*x+y*y; dp=x*x-y*y; } main() { int a=4,b=3,c=5,d=6; t(a,b,c,d);

C语言习题全集答案(至函数)

第一单元程序设计和C语言 一、选择题 1.C语言的基本构成单位是:。 A. 函数 B. 函数和过程 C. 超文本过程 D. 子程序 2.一个C语言程序总是从开始执行。 A. 主过程 B. 主函数 C. 子程序 D.主程序 3.C语言的程序一行写不下时,可以。 A. 用逗号换行 B. 用分号换行 C. 在任意一空格处换行 D. 用回车符换行 4.以下叙述不正确的是:。 A. 在C程序中,语句之间必须要用分号";"分隔 B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数 C. 在C程序中,无论是整数还是实数都能正确无误地表示 D. 在C程序中,%是只能用于整数运算的运算符 5.以下不正确的C语言标识符是。 A. ABC B. abc C. a_bc D. ab.c 6.下列字符串是标识符的是:。 A. _HJ B. 9_student C. long D. LINE 1 7.以下说法中正确的是:。 A. C语言程序总是从第一个定义的函数开始执行 B. 在C语言程序中,要调用的函数必须放在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 8.不合法的常量是:。 A. ‘\2’ B. "" C. ‘3’ D. ‘\483’ 9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是:。 int k,a,b; unsigned long w=5; double x=1.422; A. x%(-3) B. w+=-2 C. k=(a=2,b=3,a+b) D. a+=a=+(b=4)*(a=3) 10.在C语言中,字符型数据在内存中以形式存放。 A. 原码 B. BCD码 C. 反码 D. ASCII码

C语言函数练习题及答案.doc

【单选题】 在下列关于C函数定义的叙述中,正确的是? A、 函数可以嵌套定义,但不可以嵌套调用; B、 函数不可以嵌套定义,但可以嵌套调用; C、 函数不可以嵌套定义,也不可以嵌套调用; D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:2.5分 2 【单选题】 下面函数调用语句含有实参的个数为? n c((expl z exp2)z(exp3z exp4A exp5)); A、

B、

D、 5 我的答案:B得分:2.5分 3 【单选题】 c语言中函数返回值的类型是由以下哪个选项决定的? A、 函数定义时指定的类型; B、 return语句中的表达式类型; C、 调用该两数时的实参的数据类型; D、 形参的数据类型; 我的答案:A得分:2.5分

4 【单选题】

以下关于函数叙述屮,错误的是? A、 两数未被调用时,系统将不为形参分配内存单元; B、 实参与形参的个数必须相等,TL实参与形参的类型必须对应一致; C、 当形参是变量时,实参可以是常量、变量或表达式; D、 如两数调用时,实参与形参都为变:S,则这两个变量不可能共亨同一内存空间; 我的答案:B得分:2.5分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是? A、 实参与菇对应的形参共享内存存储单元; B、 只有当实参与菇对应的形参同名时才共享内存存储单元;

C、 实参与对应的形参分别占用不同的内存存储单元; 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:2.5分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是? A、 实参将地址传递给形参,并释放原先占用的存储单元; B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; C、 实参将值传递给形参,调用结束时形参再将其值回传给实参; D、 实参将值传递给形参,调用结束时形参并不将其值回传给实参; 我的答案:D得分:2.5分 7 【单选题】

C语言函数部分练习题

本题序号:80 下面程序的输出结果是____。#include main( ) { int x=10; { int x=20; printf ("%d,", x); } printf("%d\n", x); } A 10,20 B 20,10 C 10,10 D 20,20 参考答案 B 本题序号:107 下面程序的输出结果是____。main() { int a=2,i; for(i=0;i<3;i++) printf("%4d",f(a)); } f(int a) { int b=0; static int c=3; b++; c++; return(a+b+c); } A 7 7 7 B 7 10 13 C 7 9 11 D 7 8 9 参考答案 D 本题序号:108 下面程序的输出结果是____。 #include try( ) { static int x=3; x++; return(x);

} main( ) { int i, x; for(i=0; i<=2; i++ ) x=try( ); printf("%d\n", x); } A 3 B 4 C 5 D 6 参考答案 D 本题序号:109 下面程序的输出结果是____。 #include main( ) { int x=1; void f1( ), f2( ); f1( ); f2(x); printf("%d\n", x); } void f1(void) { int x=3; printf("%d ", x); } void f2( x ) int x; { printf("%d ", ++x); } A 1 1 1 B 2 2 2 C 3 3 3 D 3 2 1 参考答案 D 本题序号:126 下列叙述中错误的是 A 主函数中定义的变量在整个程序中都是有效的。 B 在其它函数中定义的变量在主函数中也不能使用。

东北大学c语言编程试题及其答案

东北大学 C 语言题库 第一部分( 选择题 ) 1构成C 语言的基本单位是 __________ 。你的答案是:正确答案是 :B 过程 函数 语句 命令 2、设x 为整型变量,不能正确表达数学关系:5 x>5&&x<10 x==6||x==7||x==8||x==9 !(x<=5)&&(x<10) 3、在C 语言中,逻辑运算符的优先级从高到低的排列顺序为 是:D &&、 || 、 || 、 &&、 &&、 ! 、 || ! 、 &&、 || 4、下面语句中,正确的是 ______ 。你的答案是:正确答案是 :D printf ( "%c\n" , "student" ); printf ( "%c\n" , "c" ); a=2,b=1 a=1,b=0 a=2,b=2 7、执行下面程序段的结果是 ______ 。 int x=0 ;do { printf (“ %2d ”, x-- ); }while (x ); 你的答案是:正确答案是 :D 打印出 321 打印出 23 不打印任何结果 陷入死循环 8、 设x=10, y=5; z=15,执行下面一段程序后 z 的结果是 _____ 。If (x>y ) if ( y>z ) x=y ; else z=y ;你的答案是:正确答案是 :C 7 6 5 for (表达式 1 ; 0;表达式 3) for (表达式 1 ; 1;表达式 3) for (表达式 1 ;表达式 1; 表达式 3) for (表达式 1 ;表达式 3; 表达式 3) 6、 执行下面程序段的结果是 。 main() { int x=1,a=0,b=0; switch(x) { case 0:b++; printf ( "%s\n" , &a ); printf ( "%s\n" , "hello" ); 5、对于 for (表达式 1;;表达式 3) 可以理解为 _____ 。你的答案是:正确答案是 :B case 1:a++; case 2:a++;b++; } printf("a=%d ,b=%d",a ,b); } 你的答案是:正确答案是 :B ____ 。你的答案是:正确答案

C语言函数习题及答案

第6章函数习题 一、选择题 1. 一个完整的C源程序是【】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成 C)要由一个主函数和一个以上的非主函数构成 D)由一个且只有一个主函数或多个非主函数构成 2. 以下关于函数的叙述中正确的是【】。 A)C语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D)main可作为用户标识符,用以定义任意一个函数 3. 以下关于函数的叙述中不正确的是【】。 A)C程序是函数的集合,包括标准库函数和用户自定义函数 B)在C语言程序中,被调用的函数必须在main函数中定义 C)在C语言程序中,函数的定义不能嵌套 D)在C语言程序中,函数的调用可以嵌套 4. 在一个C程序中,【】。 A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现 C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置 5. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【】 A)float B)long C)int D)double 6. 以下关于函数叙述中,错误的是【】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一致 C)当形参是变量时,实参可以是常量、变量或表达式 D)形参可以是常量、变量或表达式 7. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是【】。 A)参数的形实(哑实)结合 B)函数返回值 C)全局变量 D)同名的局部变量 8. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【】。 A)实参与其对应的形参共占存储单元 B)只有当实参与其对应的形参同名时才共占存储单元 C)实参与对应的形参分别占用不同的存储单元 D)实参将数据传递给形参后,立即释放原先占用的存储单元 9. 函数调用时,当实参和形参都是简单变量时,他们之间数据传递的过程是【】。 A)实参将其地址传递给形参,并释放原先占用的存储单元 B)实参将其地址传递给形参,调用结束时形参再将其地址回传给实参 C)实参将其值传递给形参,调用结束时形参再将其值回传给实参

C语言函数练习题2

/* 姓名:白银 日期: 描述:英尺,英寸,米,厘米之间的转换*/ #include <> float GetInch(float feet); float GetMeter(float inch); float GetCentiMeter(float meter); void main() { float inch; float meter; float centimeter;

printf("请输入英尺的值\n"); scanf("%f",&feet); inch=GetInch(feet); printf("转换成英寸的结果是%.2f:",inch); printf("\n"); meter=GetMeter(GetInch(feet)); printf("转换成米的结果是%.2f:",meter); printf("\n"); centimeter=GetCentiMeter(GetMeter(GetInch(feet))); printf("转换成米的结果是%.2f:",centimeter); printf("\n"); } float GetInch(float feet) {

inch=feet*12; return inch; } float GetMeter(float inch) { float meter; meter=inch*; return meter; } float GetCentiMeter(float meter) { float centimeter; centimeter=meter*100; return centimeter;

C语言函数习题及答案(20200506225202)

第 6章函数习题 一、选择题 1.一个完整的 C 源程序是【】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成 C)要由一个主函数和一个以上的非主函数构成 D)由一个且只有一个主函数或多个非主函数构成 2. 以下关于函数的叙述中正确的是【】。 A) C 语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C) C 语言规定必须用 main 作为主函数名,程序将从此开始执行,在此结束D)main 可作为用户标识符,用以定义任意一个函数 3.以下关于函数的叙述中不正确的是【】。 A) C 程序是函数的集合,包括标准库函数和用户自定义函数 B)在 C 语言程序中,被调用的函数必须在main 函数中定义 C)在 C 语言程序中,函数的定义不能嵌套 D)在 C 语言程序中,函数的调用可以嵌套 4.在一个 C 程序中 ,【】。 A) main 函数必须出现在所有函数之前 B) main 函数可以在任何地方出现 C) main 函数必须出现在所有函数之后 D) main 函数必须出现在固定位置 5.若在 C 语言中未说明函数的类型,则系统默认该函数的数据类型是【】 A) float B) long C) int D )double 6. 以下关于函数叙述中,错误的是【】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一 致C)当形参是变量时,实参可以是常量、变量或表达式 D)形参可以是常量、变量或表达式 7. C 程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是 【】。 A)参数的形实(哑实)结合 B)函数返回值 C)全局变量 D)同名的局部变量 8. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【 】。 A)实参与其对应的形参共占存储单元 B)只有当实参与其对应的形参同名时才共占存储单元 C)实参与对应的形参分别占用不同的存储单元 D)实参将数据传递给形参后,立即释放原先占用的存储单元

东北大学C语言期末题库.

C 语言提纲 总体上必须清楚的 : 1 程序结构是三种 : 顺序结构 , 循环结构 (三个循环结构 , 选择结构 (if 和 switch 2 读程序都要从 main(入口 , 然后从最上面顺序往下读 (碰到循环做循环 , 碰到选择做选择。 3 计算机的数据在电脑中保存是以二进制的形式 . 数据存放的位置就是他的地址 . 4bit 是位是指为 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个字节就可以了。 5转义字符的考查: 在程序中 int a = 0x6d,是把一个十六进制的数给变量 a 注意这里的 0x 必须存在。在程序中 int a = 06d, 是一个八进制的形式。 在转义字符中,’ \x6d’ 才是合法的, 0不能写,并且 x 是小写。 ‘ \141’ 是合法的, 0是不能写的。 ‘ \108’是非法的,因为不可以出现 8。 6算术运算符号的优先级别:

C语言函数习题

C语言函数习题 第6章函数习题 一、选择题 1. 一个完整的C源程序是【】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成C)要由一个主函数和一个以上的非主函数构成D)由一个且只有一个主函数或多个非主函数构成2. 以下关于函数的叙述中正确的是【】。 A)C语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以定义任意一个函数3. 以下关于函数的叙述中不正确的是【】。

A)C程序是函数的集合,包括标准库函数和用户自定义函数B)在C语言程序中,被调用的函数必须在main函数中定义C)在C语言程序中,函数的定义不能嵌套D)在C语言程序中,函数的调用可以嵌套4. 在一个C程序中,【】。 A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现 C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置 5. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【】A)float B)long C)int D)double 6. 以下关于函数叙述中,错误的是【】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一致C)当形参是变量时,实参可以是常量、变量或表达式D)形参可以是常量、变量或表达式 7. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是 【】。 A)参数的形实(哑实)结合B)函数返回值C)全局变量 D)同名的局部变量 8. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是【】。A)实参与其对应的形参共占存储单元 B)只有当实参与其对应的形参同名时才共占存储单元C)实参与对应的形参分别占用不同的存储单元 D)实参将数据传递给形参后,立即释放原先占用的存储单元 9. 函数调用时,当实参和形参都是简单变量时,他们之间数据传递的过程是【】。A)实参将其地址传递给形参,并释放原先占用的存储单元 B)实参将其地址传递给形参,调用结束时形参再将其地址回传给实参C)实

章 函数C语言入门习题

第六章函数 函数部分 一、选择题 1. C语言是由()构成。 A. 主程序和子程序 B. 主函数和若干子函数 C. 一个主函数和一个其他函数 D. 主函数和子程序2.以下说法中正确的是()。 A. C语言程序总是从第一个的函数开始执行 B. 在C语言程序中,要调用的函数必须在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 3.以下对C语言函数的有关描述中,正确的是()。 A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 B. C函数既可以嵌套定义又可以递归调用 C. 函数必须有返回值,否则不能使用函数 D. C程序中有调用关系的所有函数必须放在同一个源程序文件中 4. C语言程序中,当函数调用时()。 A. 实参和形参各占一个独立的存储单元 B. 实参和形参共用一个存储单元 C. 可以由用户指定是否共用存储单元 D. 计算机系统自动确定是否共用存储单元 5.关于return语句,下列正确的说法是()。 A. 在主函数和其他函数中均要出现 B. 必须在每个函数中出现 C. 可以在同一个函数中出现多次 D. 只能在除主函数之外的函数中出现一次 6.一个函数返回值的类型是由()决定的。 A. return语句中表达式的类型 B. 在调用函数时临时指定 C. 定义函数时指定的函数类型 D. 调用该函数的主调函数的类型 7.在C语言的函数中,下列正确的说法是()。 A. 必须有形参 B. 形参必须是变量名 C. 可以有也可以没有形参 D. 数组名不能作形参 8.以下描述正确的是()。 A. 函数调用可以出现在执行语句或表达式中 B. 函数调用不能作为一个函数的实参 C. 函数调用可以作为一个函数的形参 D. 以上都不正确 9.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()。 A. 地址传递 B. 单向值传递 C. 由实参传给形参,再由形参传回实参 D. 传递方式由用户指定 10.若有以下程序 #include void f(int n); main() { void f(int n); f(5);} void f(int n) {printf("%d\n",n); } 则以下叙述中不正确的是()。 A. 若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f B. 若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f C. 对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明 D. 函数f无返回值,所以可用void将其类型定义为无值型 11.以下所列的各函数首部中,正确的是()。 A. void play(var :Integer,var b:Integer) B. void play(int a,b) C. void play(int a,int b) D. Sub play(a as integer,b as integer) 12.有如下函数调用语句 func(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是()。 A. 3 B. 4 C. 5 D. 有语法错 13.若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用 语句中实参的个数是()。 A.3 B.4 C.5 D.6 14.以下函数值的类型是()。 fun (float x) { float y; y= 3*x-4; return y;} A. int B. 不确定 C. void D. float 15.下列函数定义不正确的是()。 A. int max() B. int max(x,y) {int x,y,z; int x,y; z=x>y?x:y;} {int z;z=x>y?x:y;return(z);} C. int max(x,y) D. int max() {int x,y,z; { } z=x>y?x:y; return(z); } 16.下列程序的运行结果是()。 main() {int i=3; printf("%d,%d,%d\n",i,i++,i++);} A. 5,5,4 B. 3,4,5 C. 3,3,4 D. 5,4,3 17.以下程序的输出结果是()。 fun(int x, int y, int z) { z=x*x+y*y; } main() {int a=31; fun(5,2,a); printf("%d",a);} A. 0 B. 29 C. 31 D. 无定值 18.有如下程序 int func(int a,int b) { return(a+b);} main() {int x=2,y=5,z=8,r; r=func(func(x,y),z); printf("%d\n",r);} 该程序的输出的结果是()。 A. 12 B. 13 C. 14 D. 15 19.有以下程序 float fun(int x,int y) { return(x+y); } main() {int a=2,b=5,c=8; printf("%3.0f\n",fun((int)fun(a+c,b),a-c));} 程序运行后的输出结果是()。 A. 编译出错 B. 9 C. 21 D. 9.0 二、填空题 1.下面程序的输出结果是 ________。 int t(int x,int y,int cp,int dp) { cp=x*x+y*y;dp=x*x-y*y;}

C语言函数练习题及答案

C语言函数练习题及答 案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1 【单选题】 在下列关于C函数定义的叙述中,正确的是?A、 函数可以嵌套定义,但不可以嵌套调用; ?B、 函数不可以嵌套定义,但可以嵌套调用; ?C、 函数不可以嵌套定义,也不可以嵌套调用;?D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:分 2 【单选题】 下面函数调用语句含有实参的个数为 nc((exp1,exp2),(exp3,exp4,exp5)); ?A、 1 ?B、 2 ?C、 4 ?D、 5 我的答案:B得分:分 3

【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的 ?A、 函数定义时指定的类型; ?B、 return语句中的表达式类型; ?C、 调用该函数时的实参的数据类型; ?D、 形参的数据类型; 我的答案:A得分:分 4 【单选题】 以下关于函数叙述中,错误的是 ?A、 函数未被调用时,系统将不为形参分配内存单元; ?B、 实参与形参的个数必须相等,且实参与形参的类型必须对应一致; ?C、 当形参是变量时,实参可以是常量、变量或表达式; ?D、 如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间; 我的答案:B得分:分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是?A、

实参与其对应的形参共享内存存储单元; ?B、 只有当实参与其对应的形参同名时才共享内存存储单元; ?C、 实参与对应的形参分别占用不同的内存存储单元; ?D、 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是?A、 实参将地址传递给形参,并释放原先占用的存储单元; ?B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; ?C、 实参将值传递给形参,调用结束时形参再将其值回传给实参; ?D、 实参将值传递给形参,调用结束时形参并不将其值回传给实参; 我的答案:D得分:分 7 【单选题】 若用数组名作为函数调用的实参,则传递给形参的是 ?A、 数组第一个元素的地址; ?B、 数组的第一个元素的值;

东北大学c语言编程试题及其答案

东北大学C语言题库 第一部分(选择题) 1、构成C语言的基本单位是________。你的答案是:正确答案是:B 过程 函数 语句 命令 2、设x为整型变量,不能正确表达数学关系:5 x>5&&x<10 x==6||x==7||x==8||x==9 !(x<=5)&&(x<10) 3、在C语言中,逻辑运算符的优先级从高到低的排列顺序为_____。你的答案是:正确答案是:D &&、||、! ||、&&、! &&、!、|| !、&&、|| 4、下面语句中,正确的是_____。你的答案是:正确答案是:D printf("%c\n","student"); printf("%c\n","c"); printf("%s\n",&a); printf("%s\n","hello"); 5、对于for(表达式1;;表达式3)可以理解为_____。你的答案是:正确答案是:B for(表达式1;0;表达式3) for(表达式1;1;表达式3) for(表达式1;表达式1;表达式3) for(表达式1;表达式3;表达式3) 6、执行下面程序段的结果是_____。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",a,b); }你的答案是:正确答案是:B a=1,b=1 a=2,b=1 a=1,b=0 a=2,b=2 7、执行下面程序段的结果是_____。int x=0;do { printf(“%2d”,x--);}while(x);你的答案是:正确答案是:D 打印出321 打印出23

C语言课外作业答案——函数

C语言程序设计——函数 一、选择题 1.以下函数的正确定义形式是(A) A.double fun(int x,int y) B.double fun(int x;int y) C.double fun(int x,int y); D.double fun(int x,y); 2. 在C语言中以下正确的说法是(A) A.实参和与其对应的形参各占用独立的存储单元 B.实参和与其对应的形参共占用一个存储单元 C.只有当实参和与其对应的形参同名时才共占用存储单元 D.开参是虚拟的,不占用存储单元 3.以下说法不正确的是(B)C语言规定: A.实参可以是常量、变量或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 4. 一个完整的C源程序是(B)。 A.要由一个主函数或一个以上的非主函数构成 B.由一个且仅由一个主函数和零个以上的非主函数构成 C.要由一个主函数和一个以上的非主函数构成 D.由一个且只有一个主函数或多个非主函数构成 5. 以下关于函数的叙述中不正确的是(ABCD描述都正确,本题没有答案)。 A. C程序是函数的集合,包括标准库函数和用户自定义函数 B.在C语言程序中,函数能调用它本身 C.在C语言程序中,函数的定义不能嵌套 D.在C语言程序中,函数的调用可以嵌套 6. 在一个C程序中, 正确的说法是(B)。 A.main函数必须出现在所有函数之前 B.main函数可以在任何地方出现 C.main函数必须出现在所有函数之后 D.main函数必须出现在固定位置 7. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(B)。A.float B.int C.long D.double 8. 以下关于函数叙述中,错误的是(D)。 A. 函数未被调用时,系统将不为形参分配内存单元 B. 实参与形参的个数应相等,且实参与形参的类型必须对应一致 C. 当形参是变量时,实参可以是常量、变量或表达式 D. 形参可以是常量、变量或表达式 9.以下错误的描述是(D)函数调用可以 A. 出现在执行语句中 B. 出现在一个表达式中 C. 做为一个函数的实参 D. 做为一个函数的形参 10.以下程序的正确运行结果是(D) void main() {int a=2,I; for(I=0;I<3;I++) prin tf(“%4d”,f(a));}

C语言程序设计函数练习题及参考答案

C语言程序设计练习题及参考答案 1、定义一个函数int fun(int a,int b,int c),它得功能就是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include <stdio、h> int fun(int a,int b,int c) { if(a+b>c &&b+c>a && a+c〉b) { if(a==b && b==c ) return 3;?else if(a==b||b==c||a==c) return2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c:"); scanf(”%d%d%d”,&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape:%d\n",shape); }

2、编写一个程序,将两个变量得值交换,例如变量a中得值原为 3,b中得值原为8,程序运行后 a 中得值为8,b中得值为3。 #include〈stdio、h〉 void fun(int *x,int *y) { ?int t; t=*x;*x=*y;*y=t } void main() { inta=3,b=8; printf("%d%d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); }

相关文档
最新文档