注意:此页面搜索的是所有试题
中北大学-C语言程序设计
若有以下定义和语句: 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)