出自:中北大学-C语言程序设计

设int a = 2,b = 3;float x = 3.5,y = 2.5;表达式(float)(a+b)/2+(int)x%(int)y的值为
结构化程序设计的三种基本结构是
设a = 3 , b = 2 , c = 1 , 则!(a+b)+c-6&&c+b%2的值为
4.nt a = 6 ; 若a *= 2+3,则a = ;又若a /= a+a,则a = ;又若a+=a-= a*=a,则a = ;
5.int a = 2 ,b ,c ; b = ++a ; c = (a++)+(b++) ; 则c = ,a = ,b =
判断char型变量ch是否为大写字母的正确表达式是:
若 a=1;b= 2;c=2; if(a<b<c) {t= a;a=b; b=t; c--;}则a= ,b= ,c= ,
C程序的执行是从( ) A)本程序的main函数开始,到main函数结束 B)本程序文件的第-个函数开始,到本程序文件的最后-个函数结束 C)本程序的main函数开始,到本程序文件的最后-个函数结束 D)本程序文件的第-个函数开始,到本程序main函数结束
若有说明:char *language[]={"FORTRAN","BASIC","PASCAL", "JAVA","C"};则以下不正确的叙述是( )。 A)language+2表示字符串"PASCAL"的首地址 B)*language[2」的值是字母P C)language是一个字符型指针数组,它包含5个元素, D)每个元素都是一个指向字符串变量的指针
假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为( ): A)7 B)8 C)6 D)2
下面四个选项中,均是不合法的用户标识符的选项是( ) A) A P_0 do B)float a0 _A C)b-a goto int D)-123 temp INT
sizeof(float)是( ): A)一个双精度型表达式 B) 一个整型表达式 C) 一种函数调用 D) 一个不合法的表达式
设有说明:char w; int x; f1oat y; double z; 则表达式w* x+z-y值的数据类型为( ): A)float B)char C)int D)double
阅读 下程序,若运行结果为如下形式 ,输入输出语句的正确内容是(): main() {int x; float y; printf("enter x,y:") 输入语句 输出语句 } 输入形式 enter x,y: 2 3.4 输出形式 x+y=5.40 A)scanf("%d,%f",&x,&y);printf("\nx+y= %4.2f",x+y); B)scanf("%d%f",&x,&y );printf("\nx+y=%4.2f",x+y); C)scanf("%d%f",&x,&y); printf("\nx+y=%6.lf",x+y); D)scanf("%d%3.1f",&x,&y );printf("\nx+y=%4.2f",x+y);
根据下面的走义,能打印出字母M的语句是( ) struct person {char name[9]; int age; } struct person class[10]={"John",17,"Paul",19,"Mary",18,"adam",16 }; A)printf("%c\n",class[3].name); B)printf("%c\n",class[3].name[1]); C)printf("%c\n",class[2].name[1]); D)printf("%c\n",class[2].name[0]);
若有以下定义和语句: struct student {int age;int num;}; struct student stu[3]={{1001,20},{1002,19},{1003,21}}; main() {struct student *p; p=stu;... } 则以下不正确的引用是( )。 A)(p++)->num B)p++ C)(*p).num D)p=&stu.age
当说明一个共用体变量时系统分配给它的内存是( ) A)各成员所需内存量的总和 B)结构中第一个成员所需内存量 C)成员中占内存量最大者所需的容量 D)结构中最后一个成员所需内存量
下面对typedef的叙述中不正确的是 (B ) A)用typedef可以定义各种类型名,但不能用来定义变量 B)用typedef可以增加新类型 C)用typedef只是将已存在的类型用一个新的标识符来代表 D)使用tvpedef有利于程序的通用和移植
下列运算符中优先级最高的是( ) A)< B)+ C)&& D)!=
若希望当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达式的值为"假"。则以下不能满足要求的表达式是( ): A) A%2= =1 B)!(A%2 = =0) C)!(A%2) D) A%2
为了避免在嵌套的条件语句If一else中产生二义性,C语言规定else子句总是与( )配对。 A)缩排位置相同的if B)其之前最近的if C) 之后最近的if D)同一行上的if
若w=1,x=2,y=3,z=4,则条件表达式w<x?w:y<z?y:z的值是( ): A)4 B)3 C)2 D)1
1.main() { int a=1,b=3,c=5,d=4 ,x; if(a<b) if(c<d) x=1; else if(a<c) if(b<d) x=2; else x= 3; else x=6; else x=7; printf(“x=%d”,x); }
2.#include<stdio. h> · main() { int a[10],i,j,t; for(i=0;i<10;i++) a[i]=i; for(j=1;j<=3;j++) { t=a[0]; for(i=1;i<10;i++) a[i-1]=a[i]; a[9]=t; } for(i=0;i<10;i++) printf("%3d",a[i]); }
main() {int a=2,i; for(i=0;i<3;i++)printf("%4d",f(i));} f(int a) {int b=3; static int c=0; b++;c++;return(a+b+c); }
4、main() { int a[] = {1,2,3,4,5}; int x, y, *p; p = &a[0]; x = *(p+2); y = *p++; printf(“%d,%d,%d\n”,*p, x, y); }
1. 1 n=0; Hn(x) = 2*x n=1 2*x-Hn-1(x)-2(n-1)*Hn-2(x) n>1; float x; H ( ) { if(n = = 0) return 1; else if ( ) return 2*x ; else } main() { int n ; scanf(“%f,%d”,&x,&n); printf(“%f”, H(n)); }
2.下面程序的功能是计算正整数2345的各位数字平方和,请选择填空。 #include<stdio. h> main() {int n, sum; ; n=2345 do{ sum= }; n= ; }while( ); printf("sum=%d",sum); }
3.选择法排序 void sort(int array[],n)用来对长度为n的数组array由小到大进行排序。 void sort(int array[], n) { int i, j, k, t; for(i=0; i<n-1; i++) { for(j=i+1; j<n; j++) if(array[j] < array[k]) t = array[k]; array[k] = array[i]; array[i] = t; } } main() { int a[10], i; for(i=0; i<10; i++) scanf(“%d”, &a[i] ); printf(“The sorted array: \n”); for(i=0; i<10; i++) printf(“%d”,a[i]); }
1.编制求满足条件e = 1 + 1/(1!)+ 1/(2!)+ 1/(3!) + 1/(4!) + …….求e的值(最后一项小于10-6)
2.求100——200之间的所有素数,并且把这些数保存到文件中。
编写程序,打印杨辉三角形(10行)
若i为整型变量,i=0;则以下循环while(i=0)i++;( ) A)执行10次; B)执行1次; C)一次也不执行; D)无限循环。
若fp是指向某文件的指针,且已读到该文件的末尾,则C语言函数feof(fp)的返回值是( ) A)EOF; B)非零值; C)-1; D)0
设有如下枚类型定义:enum color{red=3,yellow,blue=9,white,black};请问枚举变量black的值是( ) A)1 ; B)11; C)12; D)2。
C语言规定,程序中各函数之间( ) A)既允许直接递归调用也允许间接递归调用; B)不允许直接递归调用也不允许间接递归调用; C)允许直接递归调用不允许间接递归调用; D)不允许直接递归调用允许间接递归调用。
有如下程序,程序的运行结果为:( ) main( ) { int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1]; for(i=0;i<4;i+=2) printf("%d ",p[i] ); } A)5 2 B)5 1 C)5 3 D)9 7
设有变量说明:int a[ ][2]={1,2,3,4}; int *pa, (*pb)[2]; 则执行语句“pa= &a[0][0]; pb=a” 后,(*(pa+1))的值为:( ) A) 3 B) &a[1][0] C) 2 D) &a[0][1]
设有变量说明:int a[ ][2]={1,2,3,4}; int*pa, (*pb)[2]; 则执行语句“pa=&a[0][0]; pb=a” 后,(*(pb+1))的值为:( ) A) 3 B) &a[1][0] C) 2 D) &a[0][1]
C语言中的文件类型划分为( ) A) 索引文件和文本文件两种 B) ASCII文件和二进制文件两种 C) 只有文本文件一种 D) 只有二进制文件一种
在宏定义:#define PI 3.1415926中,用宏名PI代替一个( )。 A)常量 B)双精度数 C)单精度数 D)字符串
在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是( )。 A)auto B)static C)extern D)register
C语言规定,基本数据类型的变量做实参时,它和对应形参之间的数据传递方式是( )。 A)地址传递 B)单向的值传递 C)由实参传递给形参,再由形参传递回实参 D)由用户指定传递方式
凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( )。 A)auto B)static C)extern D)register
判断字符串a和b是否相等,应当使用( )。 A)if(a= =b) B)if(a=b) C)if(strcpy(a,b)) D)if(strcmp(a,b))
若执行fopen函数时发生错误,则函数返回值是( )。 A)0 B)1 C)EOF D)地址值
语句while(!x)中的表达式!x等价于( )。 A)x= =0 B)x!=0 C)x!=1 D)x= =1
当说明一个结构体类型变量时系统分配给它的内存是( )。 A)各成员所需内存容量的总和; B)结构体中第一个成员所需内存数; C)成员中占内存量最大者所需的容量; D)结构中最后—个成员所占内存量。
在对typedef的叙述中错误的是( )。 A)用typedef 可以定义各种类型名,但不能用来定义变量; B)用typedef可以增加新类型; C)用typedef只是将已存在的类型用一个新的标识符来代表; D)使用typedef有利于程序的通用和移植。
在下面四种字符串说明或赋值中,不正确的是( )。 A)char *p;p=“computer”; B)char *p={‘c’,’o’,’m’,’p’,’u’,’t’,’e’,’r’}; C)char p[20];p=”computer”; D)char p[ ]=”computer”, q[ ]=”student”;