608大大大大大大大大大大大大

第1©套判断题Y1.#include”文件名”可以将另外一个源文件的全部内容包含进来Y2.一个C程序中至少有一对大花括号{}Y3.在C语言程序设计中,”/”和”/”之间的内容是C语言的注释Y4.r_1_2是C语言合法的用户定义标识符N5.sqrt(m)是求m平方的函数N6.只有数字1代表逻辑值”真”N7.逻辑表达式-5&&!8的值为1N8.int a=7,b=9,t;t=(a>b)?a🅱️t的值为7Y9.C语言中”%”运算符的运算对象必须是整型Y10.x*=y+8等价于x=x*(y+8)Y11.在C程序中,j++是一条赋值语句N12.若有int i=10,j=2;则执行完ij+8;后i的值为28N13.if语句后面的控制表达式只能使用关系表达式或逻辑表达式N14.若有int i=10,j=0;则执行完语句if(j=0)i++;else i–;i的值为11N15.int i=20;switch(i/10){case 2;printf(“A”); case 1:printf(“B”);}的输出结果为AN16if后面的控制表达式可以不用括号括起来N17.与if(E)语句中的(E)等价的表达式是(E==0)Y18.do-while循环是限制性循环体语句,后判断表达式的值Y19.break语句只能用于循环语句和switch-case语句中Y20.int a[10],l=3;scanf(“%d”,&a[l]);是正确的N21.int a2;按照它在内存的排列次序,a数组的所有元素是a[0][0]、a[1][0]、a0、a1、a0、a1N22.用户定义的函数也可调用main函数Y23.如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准N24.定义结构体的保留字是strucY25.共用体类型变量不能被初始化单选1.C语言程序中必须有的函数是(B)A.#include”stido.h”B.mainC.printfD.scanf2.在C语言中,下列合法的字符常量是(B)A.\039B.\x76’C.ab’D.\o’3.以下选项中合法的用户标识符是(B)A.longB._2TestC.3DmaxD.A.dat4.语句printf(“a\bre\’hi\’y\\bou\n”);的输出结果是(说明:’\b’是退格符)(C)A.a\bre\’hi\’y\\bouB.a\bre\’hi\’y\bouC.re’hi’youD.abre’hi’u\bou5.已定义x和y为double类型,则表达式”x=1,y=x+3/2”的值是(D)A.1B.2C.2.0D.2.56.以下选项中合法的C语言字符常量是(A)A.\t’B.”A”C.67D.A7.设a、b、c、d、m、n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(C)A.0B.1C.2D.38.a,b为整型变量,二者均不为0,一下关系表达式中恒成立的是(C)A.ab/ab==1B.a/bb/a1C.a/b*b+a%baD.a/bba9.在C语言中,要求运算数必须是整数的运算符是(B)A.^B.%C.!D.>10.下列语句的输出结果是(C)printf(“%d\n”,(int)(2.5+3.0)/3)A.有语法错误不能通过编译B.2C.1D.011.如下程序的输出结果是(A)#include<stdio.h>void main(){int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf(“%d,%d\n”,a,b);}A.2,1B.3,2C.4,3D.2,-112.结构化程序设计所规定的三种基本控制结构是(C)A.输入、处理、输出B.树形、网形、环形C.顺序、选择、循环D.主程序、子程序、函数13.若变量均已正确定义并赋值,以下合法的C语言赋值语句是(A)A.x=n/2.5;B.x5;C.x+n=l;D.5=x=4+1;14.C语言的if语句嵌套时,if与else的配对关系是(A)A.每个else总是与它上面的最近的并且尚未与其他else匹配的if配对B.每个else总是与最外层的if配对C.每个else与if的配对是任意的D.每个else总是与它上面的if配对15.下列程序的运行结果是(D)#include<stdio.h>void main(){int x=8;for(;x>0;x–){if(x%3){printf(“%d,”,x–);continue;printf(“%d,”,–x);}}A.7,4,2B.8,7,5,2C.9,7,6,4D.8,5,4,216.以下程序执行结果是(A)#include<stdio.h>int a=3;void main(){int s=0;{int a=5;s+=a++;}s+=a++;printf(“%d\n”,s);}A.8B.10C.7D.1117.有以下程序段int n=0,p;do{scanf(“%d”,&p);n++}while(p!=12345&&n<3);此处do-while循环的结束条件是(D)A.p的值不等于12345并且n的值小于3B.p的值等于12345并且n的值大于等于3C.p的值不等于12345或者n的值小于3D.p的值等于12345或者n的值大于等于318.C语言中函数返回值的类型是由(D)决定的A.return语句中的表达式类型B.调用该函数的主调函数类型C.调用函数临时D.定义函数时所指定的函数类型19.分析以下程序的运行结果(A)#include<stdio.h>func(int a,int b){int temp=aa=b;b=temp;}void main(){int x,y; x=10;y=20; func(x,y);printf(“%d,%d\n”,x,y);}A.10,20B.10,10C.20,10D.20,2020.若有说明:int a={0,0};,则下面不正确的叙述是(D)A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1C.因为二维数组a中初值的个数不能被第二维大小的值整除,则第一维的大小等于所得商再加1,故数组a的行数为1D.只有元素a[0][0]和a0可得到初值0,其余元素均得不到初值021.以下对一维整型数组a的正确说明是(D)A.int a(10);B.int n=10,a[n];C.int n;scanf(“%d”,&n);int a[n];D.#define SIZE 10(换行) int a[SIZE];22.以下不正确的说法是:C语言规定(B)A.实参可以是常量,变量或表达式B.形参可以是常量,变量或表达式C.实参可以为任何类型D.形参应与其对应的实参类型一致23.关于return语句,下列正确的说法是(C)A.不能再主函数中出现且在其他函数中均可出现B.必须在每个函数中出现C.可以在同一个函数中出现多次D.只能在处主函数之外的函数中出现一次24.C语言结构体类型变量在程序执行期间(A)A.所有成员一直驻留在内存中B.只有一个成员驻留在内存中C.部分成员驻留在内存中D.没有成员驻留在内存中25.使用共用体变量,不可以(D)A.节省存储空间B.简化程序设计C.进行动态管理D.同时访问所有成员/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:下列程序从键盘输入所需数据,求出z的值并输出,要求输出结果保留2位小数。-------------------------------------------------------/#include <stdio.h>/SPACE/#include<math.h>          main()        {  int x;double y,z;/SPACE/           scanf("%d%f",&x,&y);           z=2xsqrt(y);/SPACE/           printf(“z=%.2f”,z);        }/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出      其和。-------------------------------------------------------/#include <stdio.h>#include <conio.h>main(){  int i,n,sum;  sum=0;  /SPACE/  n=0;  /SPACE/  for(i=1;i<300;i++)  /SPACE/    if(i%70||i%170)      if(i%20)      {         sum=sum+i;         n++;         printf("%6d",i);         /SPACE/         if(n%50)              printf("\n");      }   printf("\ntotal=%d",sum);}/-------------------------------------------------------【程序填空】--------------------------------------------------------- 功能:以下程序是用选择法对10个整数按升序排序。 -------------------------------------------------------/#include <stdio.h>/SPACE/#define N 10main(){   int i,j,k,t,a[N];   for(i=0;i<=N-1;i++)   scanf("%d",&a[i]);   for(i=0;i<N-1;i++)   {     /SPACE/     k=i;     /SPACE/     for(j=i+1;j<N;j++)       if(a[j]<a[k]) k=j;     /SPACE/     if(k!=i)     {       t=a[i];       a[i]=a[k];       a[k]=t;     }  }  printf(“output the sorted array:\n”);  for(i=0;i<=N-1;i++)  printf("%5d",a[i]);  printf("\n");}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:请编写函数fun,函数的功能是查找x在s所指数组中下标的位置,并作为函数值返回,      若x不存在,则返回-1。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入      你编写的若干语句。-------------------------------------------------------/ #include  <stdio.h>#include  <stdlib.h> #define   N   15 int  fun( int s, int x){/Program/ int i; for(i=0;i<N;i++) if(xs[i]) return i; return -1;/********  End  /}void main(){          int a[N]={ 29,13,5,22,10,9,3,18,22,25,14,15,2,7,27},i,x,index;        printf(“a数组中的数据 :\n”);        for(i=0; i<N; i++) printf("%4d",a[i]);         printf("\n");        printf(“给x输入待查找的数 :  “);          scanf(”%d”,&x);        index=fun( a, x );        printf(“index=%d\n”,index);}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据下面图C所示流程图编写程序。-------------------------------------------------------//Program/#include<stdio.h>void main(){ int i,a,b,x; scanf(“b=%d”,&b); b=2b; x=10; i=1; while(i<=8) { scanf(“a=%d”,&a); if(a>b) { x=a+x; printf(“x=%d”,x); i=i+1; } else { printf(“x=%d”,x); i=i+1; } }}/***  End  *********/          第2(J)套判断题N1.C程序总是从程序的第一条语句开始执行Y2.在C程序中,语句之间必须要用分号”;”分隔Y3.一个C程序必须有一个或一个以上的函数组成Y4.字符常量的长度肯定为1Y5.一个字符变量只能存储一个字符Y6.整数-32100可以赋值给int型和long int型变量Y7.在C程序中,都好运算符的优先级最低N8.7&3+12的值是15N9.执行表达式(int)i后,i的类型一定变为整型N10.若a是实行变量,在执行了a=5;后,a将变为整型变量N11.若a和b的类型相同,在执行了a=b;后,b中的值将丢失Y12.若a和b类型相同,在执行了赋值语句a=b;后中的值将放入a中,b中的值不变N13.若有int i=10,j=0;则执行完语句  if(j=0) i++;else i–;i的值为11N14.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为3Y15.int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为2Y16.int i=3,j=5;if(i>j);是正确的Y17.在C语言中,逻辑”真”等价于不等于0的数Y18.for(i=0,k=-1;k=1;k++,i++)printf(“\n”);是无限循环N19.for(m=22;m<1000;m++) if(m%30&&m%7!=0)break;是当m能被3整除或m不能被7整除时,结束本次循环进入下次循环Y20.int n;scanf(“%d”,&n);int a[n];是不合法的N21.数组说明 int a3={1,2,3,4,5};是正确的Y22.C语言规定,函数返回值类型是由在定义该函数时所指定的函数类型所决定的Y23. 一个#include命令只能指定一个被包含文件Y24.结构体类型的定义允许嵌套Y25.在程序定义了一个结构体类型后,可以多次用它来定义具有该类型的变量单选 1.以下叙述中正确的是(C)A.C语言比其它语言高级B.C语言可以不用编译就能被计算机识别执行C.C语言以接近因与国家的自然语言和数学语言作为语言的表达形式D.C语言出现的最晚,具有其他语言的一切优点2.求平方根函数的函数名为(D)A.cosB.absC.powD.sqrt3.一下标识符中,不能作为合法的C用户定义标识符的是(D)A.ForB.PrintfC.WORDD.sizeof4.C语言中的标识符只能由字母,数字和下划线三种字符组成(C)且第一个字符A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字和下划线的任一字符5.不合法的十六进制数是(C)A.0xffB.0X11C.0x1gD.0Xabc6.下列字符序列中,可用作C标识符的一组字符序列是(D)A.S.b,sum,average,_aboveB.class,day,loyus_1,2dayC.#ma,&12x,month,student_n!D.D56,r 1 2,name,st 17.下列变量说明语句中,正确的是(D)A.char:a b c;B.char a;b;c;C.int x;z;D.int x,z;8.逻辑运算符两侧运算对象的数据类型(D)A.只能是0或1B.只能是0或非0正数C.只能是整型或字符型数据D.可以是任何类型的数据9.若有说明:double a;则正确输入语句时(B)A.scanf(“%If”,a)B.scanf(“%If”,&a)C.scanf(“%if”,&a)D.scanf(“%Io”,&a)10.以下运算符中,优先级最高的运算符是(D)A.=B.!=C.(乘号)D.()11.若变量a与i已正确定义,且i已正确赋值,合法的语句是(B)A.a1B.++i;C.a=a++=5;D.a=int(i);12.以下程序的输出结果是(D)main(){int i,j,k,a=3,b=2;i=(–ab++)?–a:++b;j=a++;k=b;printf(“i=%d,j=%d,k=%d\n”,i,j,k);}A.i=2,j=1,k=3B.i=1,j=1,k=2C.i=4,j=2,k=4D.i=1,j=1,k=313.为了使输出结果为:t=4则给a和b输入的值应满足的条件是(C)void main(){int s,t,a,b; scanf(“%d,%d”,&a,&b); s=1;t=1; if(a>0)  s=s+1; if(a>b)  t=s+1; else  t=2s;printf(“%d\n”,t);}A.a>bB.a<b<0C.0<a<bD.0>a>b14.下面的for语句的循环次数为(D)for(x=1,y=0;(y!=123)&&(x<4);x++);A.是无限循环B.循环次数不定C.循环执行4次D.循环执行3次15.下面程序段的输出结果是(A)a=1;b=2;c=2;while(a<b<c) {t=a;a=b;b=t;c–;}printf(“%d,%d,%d”,a,b,c);A.1,2,0B.2,1,0C.1,2,1D.2,1,116.有以下程序段:int k=0;while(k=1)k++;while的循环执行次数是(A)A.无限次B.有语法错误,不能执行C.一次也不执行D.执行一次17.设j和k都是int类型,则for循环语句(B)for(j=0,k=-1;k=1;j++,k++)printf(“\n”)A.循环结束的条件不合法B.是无限循环C.循环体一次也不执行D.循环体只执行一次18.已知int p();p是(C)A.int型变量B.函数p的调用C.一个函数声明,该函数的返回值是int型的值D.强制类型转换表达式中的变量19.分析一下程序的运行结果(B)#include<stdio.h>int func(int n){ if(n==1)  return 1; else  return(nfunc(n-1));}void main(){int x; fun=func(3); printf(“%d\n”,x);}A.5B.6C.7D.820.当执行下面的程序时。如果输入ABC则输出结果是(A)#include<stdio.h>#include<string.h>void main(){ char ss[10]=”1,2,3,4,5”;gets(ss);strcat(ss,”6789”);printf(“%s\n”,ss);}A.ABC6789B.ABC67C.12345ABC6D.ABC45678921.若有说明:int a[10];则对a数组元素的正确引用是(D)A.a[10]B.a[3,5]C.a(5)D.a[10-10]22.C语言程序中,当点用函数时(A)A.实参和虚参各占一个独立的存储单元B.实参和虚参可以共用存储单元C.可以由用户指定是否共用存储单元D.计算机系统自动确定是否共用存储单元23.以下函数电泳语句中实参的个数是(A)exce((v1,v2),(v3,v4,v5),v6);A.3B.4C.5D.624.相同结构体类型的变量之间,可以(B)A.相加B.赋值C.比较大小D.地址相同25.以下对结构体变量stu1中成员age的非法引用是(B)struct student{ int age; int num;}stu1p;p=&stu1;A.stu1.ageB.student.ageC.p->ageD.(p).age/-------------------------------------------------------【程序填空】---------------------------------------------------------题目: 以下程序按每行5个数的格式输出1至n范围内能被7或17 整除的整数,并求出其和。       如输入:50  则输出:       7       14      17      21      28       34      35      42      49       Sum=247-------------------------------------------------------/#include <stdio.h>void main(){        int  i, n, ct=0, sum=0;        scanf( “%d”, &n );        for ( i=1; i<=n; i++ )/SPACE/                if (i%70||i%170)                {                        printf( “%d\t”, i );/SPACE/                        sum+=i;                        ct++;/SPACE/                        if (ct%5==0)                                printf( “\n” );                }        printf( “\nSum=%d\n”, sum );} /-------------------------------------------------------【程序填空】---------------------------------------------------------题目:阅读以下程序并填空,该程序是求阶乘的累加和。      S=0!+1!+2!+…+n!-------------------------------------------------------/#include<stdio.h>long f(int n){  int i;   long s;/SPACE/   s=1;   for(i=1;i<=n;i++)/SPACE/   s=si;   return  s;}void main(){  long s;   int k,n;   scanf("%d",&n);/SPACE/   s=0;   for(k=0;k<=n;k++)/SPACE/   s=s+f(k);   printf("%1d\n",s);  }/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:求一个二维数组中每行的最大值和每行的和。-------------------------------------------------------/#include <stdio.h>main(){  int a[5][5],b[5],c[5],i,j,k,s=0;  for(i=0;i<5;i++)    for(j=0;j<5;j++)      a[i][j]=rand()%(40)+20;  for(i=0;i<5;i++)  {     /SPACE/    k=a[i][0];s=0;    for(j=0;j<5;j++)    {       /SPACE/       if(k<a[i][j])k=a[i][j];       s=s+a[i][j];    }    b[i]=k;    /SPACE/    c[i]=s;  }  for(i=0;i<5;i++)  {    for(j=0;j<5;j++)       /SPACE/       printf("%5d",a[i][j]);    printf("%5d%5d",b[i],c[i]);    printf("\n");  }}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:写程序求1-3+5-7+…-99+101的值要求:使用程序中定义的变量-------------------------------------------------------/#include <stdio.h>int fun(int n){        int i,s=0,f=1;//i定义为循环变量,s为1-3+5-7+…-n的值        /Program/ for(i=1;i<=n;i=i+2) { s=s+if; f=-f; }        /*********  End  /        return s;}void main(){        printf("%d",fun(101));}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据图J所示流程图编程-------------------------------------------------------//Program/#include<stdio.h>int main(){ int i,n; scanf("%d",&n); i=2; while(i<n) {if(n%i0) break; else i++;} if(i<n-1) printf(“yes\n”); else printf(“no\n”);}/**  End  **********/              第3(M)套判断题 Y1.一个C程序中至少有一对大花括号{}N2.在一个C程序中,main函数必须出现在所有函数之前Y3.#include”文件名”可以将另外一个源文件的全部内容包含进来N4.long int a[10];scanf(“ld”,a);可从键盘上给a数组的所有元素输入值N5.若i=3,则printf(“%d”,-i++);输出的值为-4N6.C程序中的关键字必须小写,其他标识符不区分大小写Y7.若a=3,b=2,c=1则关系表达式”(a>b)c”的值为”真”N8.[3,6,18,23]是合法的表达式N9.表达式(j=3,j++)的值是4N10.若a是实行变量,C程序中允许以下赋值a=10;因此,实型变量中允许存放整型数据N11.int a=10;printf(“%d”,a++);输出11Y12.设x,t均为int型变量,则执行语句”x=10;t=x&&x<=10;”后,t的值为1N13.int i=3,j=5;if(i>j);j++;else i++;是正确的N14.开关语句switch最多可形成三个分支N15.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为3N16.C语言的if语句嵌套时,if与else的匹配关系是每个else与if的匹配是任意的Y17.int i=3,j=5;if(i>j);是正确的N18.foe(;😉;是错误的N19.continue语句不只用于循环语句中Y20.数组名是一个不可变的地址常量,不能对它进行赋值运算N21.数组说明int a[3,3]={1,2,3,4,5,6},是正确的Y22.fabs()是C语言取绝对值的数学函数Y23.在C语言程序中,函数的定义不可以嵌套,但函数的调用可以嵌套Y24.结构体类型的定义允许嵌套Y25.共用体类型变量不能被初始化单选1.一个C语言程序总是从(B)开始执行的A.主过程B.主函数C.子程序D.主程序2.在一个C程序中(B)A.main函数必须出现在所有函数之前B.main函数可以在任何地方出现C.main必须出现在所有函数之后D.main函数必须出现在固定位置3.在C语言中,要求参加运算的数必须是整数的运算符是(A)A.%B./C.!D.**4.下列四个选项中,均是C语言关键字的选项是(B)A.auto enum includeB.switch typedef continueC.signed union scanfD.if struct type5.在C语言中,int、char和short三种类型数据在内存中所占用的字节数(D)A.由用用户自己定义B.均为2个字节C.是任意的D.有所用机器的机器字长决定6.若变量以正确定义并赋值,符合C语言语法的表达式是(B)A.a=a+1B.a=7+b+c,a++C.int(12.3/4)D.a=a+7=c+b7.已知int i;float f;正确的语句是(D)A.(int f)%iB.int(f)%iC.int(f%i)D.(int)f%i8.下列关于单目运算符++、–的叙述中正确的是(D)A.它们的运算对象可以是任何变量和常量B.它们的运损对象可以是char型变量和int型变量,但不能是float型变量C.它们的运算对象可以是int型变量,但不能是double型变量和float型变量D.它们的运算对象可以是char型变量、int型变量和float型变量9.若有以下程序其输出结果是(B)int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\n”,a,b,c);A.3,0,-10B.0,0,5C.-10,3-10D.3,0,310.设a、b、c、d、m、n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(C)A.0B.1C.2D.311.如下程序的输出结果是(A)#include<stdio.h>void main(){int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf(“%d,%d\n”,a,b);}A.2,1B.3,2C.4,3D.2,-112.若有以下定义:char s=’\092’;则该语句(B)A.使s的值包含一个字符B.定义不合法,s的值不确定C.使s的值包含4个字符D.使s的值包含3个字符13.以下程序的输出结果是(B)main(){int i=010,j=10;printf(“%d,%d\n”,++i,j–);}A.11,10B.9,10C.010,9D.10,914.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为(A)A.1B.2C.3D.不一定15.下列程序的运行结果是(B)#include<stdio.h>void main(){int i,j,m=55;for(i=1;i<=3;i++)for(j=3;j<=i;j++)m=m%j;printf(“%d\n”,m);}A.0B.1C.2D.316.在while(x)语句中的x与下面条件表达式等价的是(D)A.x0B.x1C.x!=1D.x!=017.C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递方式是(D)A.地址传递B.值传递C.由实参传给形参,并由形参传回来给实参D.由用户指定传递方式18.分下以下程序的运行结果(B)#include<stdio.h>int func(int n){ if(n1)  return 1; else  return(nfunc(n-1));}void main(){int x; fun=func(3); printf(“%d\n”,x);}A.5B.6C.7D.819.以下正确的说法是(C)A.定义函数时,形参的类型说明可以放在函数体内B.return后边的值不能为表达式C.如果函数值的类型与返回值表达式类型不一致,以函数值类型为准D.如果形参与实参的类型不一致,以实参类型为准20.对以下说明语句 int a[10]={6,7,8,9,10};的正确理解是(B)A.将5个初值依次赋给a1至a[5]B.将5个初值依次赋给a[0]至a4C.将5个初值依次赋给a[6]至a[10]D.因为数组长度与初值的个数不相同,所以此语句不正确21.若二维数组a有m列,则在a[i][j]前的元素个数为(B)A.jm+iB.im+jC.im+j-iD.im+j+122.C语言允许函数类型缺省定义,此时函数值隐含的类型是(B)A.floatB.intC.longD.double23.若已定义的函数有返回值,则以下关于函数调用的叙述中错误的是(D)A.函数调用可以作为独立语句存在B.函数调用可以作为一个函数的实参C.函数调用可以出现在表达式中D.函数调用可以作为一个函数的形参24.C语言中,定义结构体的保留字是(B)A.unionB.structC.enumD.typedef25.使用共同体变量,不可以(D)A.节省存储空间B.简化程序设计C.进行动态管理D.同时访问所有成员/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输入数组,最大的与最后一个元素交换,最小的与第一个元      素交换,输出数组。-------------------------------------------------------*/#include  <stdio.h>input(number)int number[10];{  int i;  /SPACE/  for(i=0;i<9;i++)    scanf("%d,",&number[i]);    scanf("%d",&number[9]);}max_min(array)int array[10];{  int *max,*min,k,l;  int *p,*arr_end;  arr_end=array+10;  max=min=array;  for(p=array+1;p<arr_end;p++)    if(*p>*max)       max=p;  else if(*p<*min)     /SPACE/  min=p;  k=*max;  l=*min;  *p=array[0];  array[0]=l;  /SPACE/  l=p;  p=array[9];  /SPACE/  array[9]=k;  k=p;}output(array)int array[10];{  int p;  for(p=array;p<array+9;p++)  printf("%d,",p);  printf("%d\n",array[9]);}main(){  int number[10];  input(number);  max_min(number);  output(number);}/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:以下函数用以求x的y次方,请填空。-------------------------------------------------------/ int fun(int  x,int y){  int i;   int z=1;/SPACE/   for(i=1;i<=y;i++)/SPACE/        z=zx ;   return z;  }main(){ int x;   int y;  scanf("%d",&x);  scanf("%d",&y);  printf("%d,%d\n",x,y);  printf("%d\n",fun(x,y));}/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:下面程序中的数组a包括10个整数元素,从a中第二个元素起,分别将后项      减前项之差存入数组b,并按每行4个元素输出数组b,请填空。-------------------------------------------------------/#include<stdio.h>void main(){  int a[10],b[10],i;   for(i=0;i<10;i++)     scanf("%d",&a[i]);   for(i=1;i<10;i++)/SPACE/      b[i-1]=a[i]-a[i-1];   for(i=1;i<10;i++)/SPACE/   {  printf("%d ",b[i-1]);      if(i%40)   printf("\n");  }}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:完成n个数的选择排序,按照由小到大的顺序排列。-------------------------------------------------------/#define  N 5#include <stdio.h>void main(){         int a[N],i,j,min,temp;        printf(“please input the ten data:”);        for(i=0;i<N;i++)          scanf("%d",&a[i]);         /Program/ for(i=0;i<=N-1;i++) { temp=i; for(j=i+1;j<N;j++) if(a[temp]>a[j])temp=j; if(temp!=0) {min=a[i];a[i]=a[temp];a[temp]=min;} }        /**********  End  /        printf(“the sorted number is :”);        for(i=0;i<N;i++)             printf("%d  “,a[i]);        printf(”\n");}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据如图M所示流程图编程 -------------------------------------------------------//Program/#include<stdio.h>void main(){ int i,sum,x; sum=0; i=0; while(i<10) { scanf("%d",&x); if(x<10) { sum=sum+x; i=i+1; } else { i=i+1; } } printf("%d",sum);}/**  End  /            第4(N)套判断题Y1.C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的N2.#include”stdio.h”是每个程序必须写的N3.C程序总是从程序的第一条语句开始执行N4.C程序中的关键嗞必须小写,其他标识符不区分大小写Y5.putchar(‘\n’);与printf(“\n”);作用相同N6.用scanf函数输入数据可以规定精度,所以scanf(“%6.2f”,&x)是正确的N7.逻辑表达式-5&&!8的值为1N8.int a=7,b=9,t;t=(a>b)?a🅱️t的值为7Y9.C语言中”%”运算符的运算对象必须是整型Y10.设x,t均为int型变量,则执行语句”x=10;t=x&&x>10;”后t的值为0N11.若有int i=10,j=2;则执行完i=j+8;后i的值为28N12.若a是实型变量,在执行了a=5;后,a将变为整型变量N13.与if(E)语句中的(E)等价的表达式是(E0)Y14.在C语言中,逻辑”真”等价于不等于0的数Y15.int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为2N16.若有int i=10,j=0;则执行完语句if(j=0) i++;else i–;i的值为11N17.若有int i=10,j=0;则执行完语句if(j=0)i;else i–;i的值为11N18.在C语言中,为了结束有while语句构成的循环,while后一对圆括号中表达式的值应该是1Y19.三种循环(while语句、for语句、do-while语句)都可以用来处理同一个问题,一般它们可以相互替代N20.数组说明int a3={1,2,3,4,5};是正确的Y21.int n;scanf(%d,&n);int a[n];是不合法的N22.C程序在执行过程中对预处理命令进行处理N23.进行宏定义时,宏名必须使用大写字母表示N24.结构体类型只有一种N25.任何结构体类型的变量都可以互相赋值单选题1.下列选项中,不是C语言提供的合法关键字的是(B)A.switchB.cherC.defaultD.case2.一个C程序的执行是从(A)A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束3.C语言中表达逻辑”真”值的是(D)A…T.B.0C.TureD.非0的数4.若变量a,i已正确定义,且i已正确赋值,则合法的语句是(B)A.i=int(a)B.++iC.a=a++5D.a=int(i)5.以下程序段的执行结果是(C)double x;x=218.82631;printf(“%-6.2e\n”,x)A.输出格式描述的域宽不够,不能输出B.输出为21.38e+01C.输出为2.2e+02D.输出为-2.14e26.下列四个选项中,均是C语言关键字的选项是(B)A.auto enum includeB.switch typedef continueC.signed union scanfD.if struct type7.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(D)A.1B.2C.2.0D.2.58.下列语句的输出结果是(C)printf(“%d\n”,(int)(2.5+3.0)/3)A.有语法错误不能通过编译B.2C.1D.09.语句printf(“%d”,(a=2)&&(b=-2));的输出结果是(D)A.无输出B.结果不确定C.-1D.110.设有int x=11;则表达式(x++1/3)的值是(A)A.3B.4C.11D.1211.为了避免在嵌套的条件语句if…else中产生二义性,C语言规定:else子句总是与(B)配对A.缩排位置相同的ifB.其之前最近的ifC.其之后的最近的ifD.同上一行的if12.设有说明语句”int a=1,b=0;”则执行以下语句后,输出为(B)switch(a){case 1:switch(b){case 0:printf(“0”);break:case 1:printf(“1”);break;}case 2:printf(“2”);break;}A.0B.**02**C.**012**D.有语法错误13.执行下列语句后,a和b的值分别为(B)int a,b;a=1+’a’;b=2+7%-4-’A’A.-63,-64B.98,-60C.1,-60D.79,7814.下列程序执行后的输出结果是(B)void main(){int i,j,x=0;  for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;}x++;}printf(“x=%d\n”,x);}A.x=4B.x=8C.x=6D.x=1215.假定所有变量均已正确定义,下列程序段运行后x的值是(B)k1=1;k2=2;k3=3;x=15;if(!k1) x–;else if(k2) x=4;   else x=3;A.14B.4C.15D.316.下列程序的输出结果是(B)main(){int x=1,y=0,a=0,b=0; switch(x){case 1:switch(y){case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;case 3:a++;b++;break;}printf(“a=%d,b=%d\n”,a,b);}A.a=1,b=0B.a=2,b=1C.a=1,b=1D.a=2,b=217.以下语句中,循环次数不为10次的语句是(A)A.for(i=1;i<10;i++);B.i=1;do{i++;}while(i<=10);C.i=10;while(i>0){–i}D.i=1;m:if(i<=10){i++;goto m;}18.以下程序的运行结果是(D)main(){int i=1,sum=0;while(i<10) sum=sum+1;i++;printf(“i=%d,sum=%d”,i,sum);}A.i=10,sum=9B.i=9,sum=9C.i=2,sum=1D.运行出现错误19.C语言中while和do-while循环的主要区别是(A)A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while的循环控制条件更严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句20.若有说明;int a[10];则对a数组元素的正确引用是(D)A.a[10]B.a[3,5]C.a(5)D.a[10,-10]21.在C语言中,引用数组元素时,其数组下标的数据类型允许是(C)A.整型常量B.整形表达式C.整型常量或整形表达式D.任何类型的表达式22.若调用一个函数,且此函数中没有return语句,则正确的说法是:该函数(D)A.没有返回值B.返回若干个系统默认值C.能返回一个用户所希望的值D.返回一个不确定的值23.关于return语句,下列正确的说法是(C)A.不能在主函数中出现且在其他函数中均可出现B.必须在每个函数中出现C.可以在同一个函数中出现多次D.只能在处主函数之外的函数中出现一次24.设有以下说明和定义的语句:struct stu{int a; float b;}stutype;则下面的叙述正确的是(C)A.struct是结构体类型名B.struct stu是用户定义的结构体变量名C.stutype是用户定义的结构体变量名D.a和b都是结构体类型名25.对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是(A)A…B.->C.D.&/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:企业发放的奖金根据利润提成。利润(i)低于或等于10万元      时,奖金可提10%;利润高于10万元,低于20万元时,低于      10万元的部分按10%提成,高于10万元的部分,可可提成7.5%      ;20万到40万之间时,高于20万元的部分,可提成5%;40万      到60万之间时高于40万元的部分,可提成3%;60万到100万      之间时,高于60万元的部分,可提成1.5%,高于100万元时,      超过100万元的部分按1%提成,从键盘输入当月利润i,求      应发放奖金总数?-------------------------------------------------------/#include <stdio.h>main(){  long int i;  double bonus1,bonus2,bonus4,bonus6,bonus10,bonus;  scanf("%ld",&i);  bonus1=1000000.1;bonus2=bonus1+1000000.75;  bonus4=bonus2+2000000.5;  bonus6=bonus4+2000000.3;  bonus10=bonus6+4000000.15;  if(i<=100000)    bonus=i0.1;  /SPACE/  else if(i<=200000)                                    bonus=bonus1+(i-100000)0.075;  /SPACE/  else if(i<=600000)                                    bonus=bonus2+(i-200000)0.05;  /SPACE/  else if(i<=1000000)                                    bonus=bonus4+(i-400000)0.03;  else if(i<=1000000)    bonus=bonus6+(i-600000)0.015;  else    bonus=bonus10+(i-1000000)0.01;  /SPACE/  printf(“bonus=%d”,bonus);}/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:下面的程序是求1!+3!+5!+……+n!的和。------------------------------------------------------/#include <stdio.h>main(){  long int f,s;  int i,j,n;  /SPACE/  s=0;  scanf("%d",&n);   /SPACE/  for(i=1;i<=n;i+=2)   {      f=1;                       /SPACE/     for(j=1;j<=i;j++)     /SPACE/      f=fj;      s=s+f;  }  printf(“n=%d,s=%ld\n”,n,s);}/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:下面程序将二维数组a的行和列元素互换后存放到另一个二维数组b中,请填空。-------------------------------------------------------/#include<stdio.h>void main( ){  int a2={{1,2,3},{4,5}},b3,i,j;   for(i=0;i<2;i++)   {   for(j=0;j<3;j++)/SPACE/         b[j][i]=a[i][j];  }for(i=0;i<3;i++)   {   for(j=0;j<2;j++)/SPACE/    printf("%d  “,b[i][j]);    printf(”\n"); } }/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:请编写函数fun,其功能是:计算并输出下列多项式的值。       S=1/(1×2)+1/(2×3)+…+1/(n×(n+1)) 例如:当n=10时,函数值为0.909091。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入      你编写的若干语句。-------------------------------------------------------/#include<conio.h>#include<stdio.h>#include<stdlib.h>double fun(int n){/Program/int i=1;double sum=0;for(i=1;i<=n;i++){sum+=1.0/(i(i+1));}return sum;/**********  End  /}void main(){         system(“CLS”);        printf("%f\n",fun(10));}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据图N所示流程图编程。-------------------------------------------------------//Program/#include<stdio.h>void main(){ int x,i,n,m; float s,ave; s=0; m=0; scanf(“n=%d”,&n); i=1; while(i<=n) { scanf(“x=%d”,&x); if(x<=90 && x>=70) { m=m+1; s=s+x; i=i+1; } else { i=i+1; } } ave=s/m; printf(“s=%f m=%d ave=%f”,s,m,ave);}/**  End  /                                     第5§套判断题N1.在C程序中,每行只能写一条语句Y2.在C程序中,语句之间必须要用”;”分隔N3.C语言规定,在一个源程序中,main函数的必须在最开始N4.一个变量可以同时被定义为多种类型N5.若x为float型变量,则以下语句x=213.82631;printf(“%-4.2f\n”,x);的输出为213.82N6.当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值Y7.在C程序中,%是只能用于整数运算的运算符N8.关系运算符<=与的优先级相同Y9.在C程序中,逗号运算符的优先级最低Y10.在C程序中,j++是一条赋值语句N11.若a和b的类型相同,在执行了a=b;后,b中的值将丢失Y12.a=(b=4)+(c=6)是一个合法的赋值表达式N13.if语句后面的控制表达式只能使用关系表达式或逻辑表达式N14.if后面的控制表达式可以不用括号括起来N15.int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为3N16.int i=20;switch(i/10){case 2:printf(“A”);case 1:printf(“B”);}的输出结果为AN17.与if(E)语句中的(E)等价的表达式是(E0)N18.for(m=22;m<1000;m++)if(m%3==0&&m%7!=0)break;是当m能被3整除或m不能被7整除时,结束本次循环进入下一循环Y19.do-while循环是先执行循环体语句,后判断表达式的值Y20.数组名是一个不可变的地址常量,不能对它进行赋值运算Y21.同一数组的元素在内存中存储是连续存放的,占有连续的存储单元Y22.return语句,可以在同一函数中出现多次Y23.如果函数的类型和return语句中表达式的值不一致,则以函数类型为准Y24.对结构体类型的变量的成员可以像普通变量一样参与各种运算N25.结构体类型只有一种选择题1.一个C语言程序总是从(B)开始执行的A.主过程B.主函数C.子程序D.主程序2.求平方根函数的函数名为(D)A.cosB.absC.powD.sqrt3.假定w,x,y,z,m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4m=(w<x)?w;x;m=(m<y)?m:y;m=(m<z)?m:z;则该程序运行后,m的值是(D)A.4B.3C.2D.14.以下叙述正确的是(B)A.可以把define和if定义为用户标识符B.可以把define定义为用户标识符,但不能阿布if定义为用户标识符C.可以把if定义为用户标识符,但不能把define定义为用户标识符D.define和if都不能定义为用户标识符5.已知int a=4,b=5;则执行表达式a=a>b后,变量a的值为(A)A.0B.1C.4D.56.判断char类型数据c1是否为大写字母的最简单且正确的表达式为(D)A.A’<=c1<=’Z’B.(c1>=’A’)&(c1<=’Z’)C.(‘A’<=c1)AND(‘Z’>=c1)D.(c1>=’A’)&&(c1<=’Z’)7.能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是(D)A.a>=10 or a<=0B.a>=0|a<=10C.a>=10&&a<=0D.a>=10||a<=08.已知int a;int b;float c; double d;则表达式ab==c-d结果为(B)型A.DoubleB.intC.floatD.char9.若a为int类型,且其值为3,则执行完表达式a+=a-=aa后,a的值是(C)A.-3B.9C.-12D.610.下属程序的输出结果是(A)#include<stdio.h>void main(){printf(“%f,2.5+17%2/4”);}A.2.500000B.2.750000C.3.375000D.3.00000011.执行下列语句后变量x和y的值是(C)y=10;x=y++;A.x=10,y=10B.x=11,y=11C.x=10,y=11D.x=11,y=1012.下列程序的输出结果为(A)main(){int m=7,n=4;float a=38.4,b=6.4,x;x=m/2+na/b+1/2;printf(“%d\n”,x);}A.27.000000B.27.500000C.28.000000D.28.50000013.结构化程序有三种基本结构组成,三种基本结构组成的算法(A)A.可以完成任何复杂的任务B.只能完成部分复杂的任务C.只能完成符合结构化的任务D.只能完成一些简单的任务14.有以下程序:int k=0while(k=1)k++;while循环执行的次数是(A)A.无限次B.有语法错误,不能执行C.一次也不执行D.执行一次15.下列程序的输出结果是(B)main(){int x=1,y=0,a=0,b=0; switch(x){case 1:switch(y){case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;case 3:a++;b++;break;}printf(“a=%d,b=%d\n”,a,b);}A.a=1,b=0B.a=2,b=1C.a=1,b=1D.a=2,b=216.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else自居总是与(B)配对A.缩排位置相同的ifB.其之前最近的ifC.其之后的最近的ifD.同上一行的if17. 在C语言中,能代表逻辑”真”的是(D)A.TrueB.大于0的数C.非0整数D.非0的数18.若i为整型变量,则以下循环执行次数是(B)A.无限次B.0次C.1次D.2次19.以下程序段中,能够争取执行循环的是(C)A.for(i=1;i>10;i++)B.static int a; while(a)C.int s=6do s-=2;while(s);D.int s=6;  m:if(s<100)exit(0);else s-=2;goto m:20.以下对一维整型数组a的正确说明是(D)A.int a(10);B.int n=10,a[n];C.int n;scanf(“%d”,&n);int a[n];D.#define SIZE 10 (换行) int a[SIZE];21.在C语言中,一维数组的定义方式为:类型说明符数组名(D)A.[常量表达式]B.[整型表达式]C.[整型常量]或[整形表达式]D.[整型常量]22.若有说明:int p,m=5,n;以下正确的程序段是(D)A.p=&n;  scanf(“%d”,&p);B.p=&n; scanf(“%d,p);C.scanf(“%d”,&p);  p=n;D.p=&n;p=m;23.全局变量的定义不可能在(A)A.函数内部B.函数外面C.文件外面D.最后一行24.当说明一个结构体变量时系统分配给它的内存是(A)A.各成员所需内存的总和B.结构中第一个成员所需内存量C.成员中占内存量最大者所需的容量D.结构中最后一个成员所需的内存量25.结构体类型的定义允许嵌套是指(A)A.成员已经是或正在定义的结构体类型B.成员可以重名C.结构体型可以派生D.定义多个结构体型/-------------------------------------------------------【程序填空】--------------------------------------------------------- 功能:求出二维数组中的最大元素值。-------------------------------------------------------/#include <stdio.h>max_value(m,n,array)/SPACE/int m,n,array;{  int i,j,max;  max=array[0][0];  for(i=0;i<m;i++)    for(j=0;j<n;j++)      /SPACE/      if(max<array[i][j])max=array[i][j];  return(max);} void main(){  int a3={{1,3,5,7},{2,4,6,8},{15,17,34,12}};  /SPACE/  printf(“max value is %d\n”,max_value(3,4,a));}/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:产生10个[30,90]区间上的随机整数,然后对其用选择法      进行由小到大的排序。-------------------------------------------------------/#include <stdio.h>main(){  /SPACE/   int t;   int i,j,k;   int a[10];   for(i=0;i<10;i++)     a[i]=rand()%(61)+30;   for(i=0;i<9;i++)   {      /SPACE/      k=i;      for(j=i+1;j<10;j++)        /SPACE/      if(a[k]>a[j]) k=j;      if(k!=i)       {           t=a[k];           a[k]=a[i];           a[i]=t;      }   }    /SPACE/   for(i=0;i<10;i++)     printf("%5d",a[i]);   printf("\n");}/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:在数组内指定位置i插入元素x-------------------------------------------------------/#include<stdio.h>void main(){  int a[11],i,j,x;   for(i=0;i<10;i++)     scanf("%d",&a[i]);   scanf("%d%d",&i,&x);/SPACE/   for(j=9;j>=i;j–)/SPACE/       a[j+i]=a[j];   a[i]=x;   for(i=0;i<11;i++)    printf("%d",a[i]);  }/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分      的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。 例如:当score数组中的数据为10、20、30、40、50、60、70、80、90时,函数返回的      人数应该是4,below中的数据应为10、20、30、40。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入      你编写的若干语句。-------------------------------------------------------/#include <conio.h>#include <stdio.h>#include <string.h>#include <stdlib.h>int fun(int score[],int m, int below[]){/Program/ int i,j=0; double a,s=0; for(i=0;i<m;i++) s+=score[i]; a=s/m; for(i=0;i<m;i++) { if(score[i]<a) below[j++]=score[i]; }                          return j;                                                                 /********  End  /}void main(){                int i, n, below[9];        int score[9]={10,20,30,40,50,60,70,80,90};        system(“CLS”);        n=fun(score, 9, below);        printf("\nBelow the average score are: “);        for(i=0;i<n;i++)                  printf(”% d",below[i]);}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据如图P所示流程图编程。-------------------------------------------------------/ /Program/#include <stdio.h>int main(){ int m,x,i; scanf("%d",&x); m=x; i=0; while(i<10) { scanf("%d",&x); if(m<x) { m=x; i++; } else { i++; } } printf(“m=%d”,m); return 0;} /**  End  /   第6(Z)套判断题N1.在一个C程序中,main函数必须出现在所有函数之前  N2.#include”stdio.h”是每个函数中必须写的N3.程序总是从程序的第一条语句开始执行N4.以下各数均不是合法的八进制数:256、03A、-0127N5.语句scanf(“%7.2f”,&a):是一个合法的scanf函数Y6.整数-32100可以赋值给int型和long int型变量N7.表达式(j=3,j++)的值是4N8.在C程序中,赋值运算符的优先级最低N9.7&3+12的值是15N10.若a是实型变量,在执行了a=5;后a将变为整型变量N11.若有int i=10,j=2;则执行完ij+8;后i的值为28N12.若a是实型变量,C程序中允许以下赋值a=10;因此,实型变量中允许存放整形数据Y13.在C语言中,逻辑”真”等价于不等于0的数N14.开关语句switch最多可形成三个分支Y15.int a=1,b=2;if(a>c)b=a;a=c;c=b;则c的值为2Y16.int i=3,j=5;if(i>j);是正确的N17.若有int i=10,j=0;则执行完语句if(j=0) i++;else i–;i的值为11Y18.break语句只能用于循环语句和switch-case语句中Y19.若有说明int c;则while(c=getchar());是正确的C语句Y20.int a[10];for(i=1;i<=10;i++)a[i-1];能使数组元素分别取值{1,2,3,4,5,6,7,8,9,10}N21.二维数组在内存中存储以列为主序方式存放Y22.C程序中#include和#define均不是C语句N23.通过return语句,函数可以带回一个或一个以上的返回值Y24.在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量Y25.对结构体类型的变量的成员可以像普通变量一样参与各种运算单选题1.(A)是构成C语言程序的基本单位A.函数B.变量C.子程序D.语句2.以下叙述中正确的是(B)A.C语言的源程序不必通过编译就可以直接运行B.C语言中的每条可执行语句最终都将被转换成二进制的机器指令C.C源程序经编译形成的二进制代码可以直接运行D.C语言中的函数不可以单独进行编译3.C语言中的标识符只能由字母数字下划线三种字符组成,且第一个字符(C)A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字和下划线中任一字符4.设有说明语句:char a=’\72’;则变量a(A)A.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法5.为了提高程序的运行速度,在函数中对于整型或指针可以使用(B)型的变量A.autoB.registerC.staticD.exterm6.以下字符中不是转义字符的是(C)A.\a’B.\b’C.\c’D.’\’7.putchar函数可以向终端输出一个(D)A.整型变量表达式值B.实型变量值C.字符串D.字符或字符型变量值8.下列关于单目运算符++、–的叙述中正确的是(D)A.它们的运算对象可以是任何变量和常量B.他们的运算对象可以是char型变量和int型变量,但不能是float型变量C.他们的运算对象可以是int型变量,但不能是double型变量和float型变量D.他们的运算对象可以是char型变量、int型变量和float型变量9.逻辑运算符两侧运算对象的数据类型(D)A.只能是0或1B.只能是0或非0正数C.只能是整形或字符型数据D.可以是任何类型的数据10.下列运算符中是C语言关系运算符的是(D)A.~B.!C.&D.!=11.下列关于switch语句和break语句的结论中,正确的是(B)A.break语句是switch语句中的一部分B.在switch语句中可以根据需要使用或不使用break语句C.在switch语句中必须使用break语句D.break语句只能用于switch语句中12.结构化程序由三种基本结构组成,三种基本结构组成的算法(A)A.可以完成任何复杂的任务B.只能完成部分复杂的任务C.只能完成复合结构化的任务D.只能完成一些简单的任务13.用下列语句定义a,b,c,然后执行b=a\c=’b’+b,则b,c的值是(C)Long a=0xffffff;Int b;chat c;A.0ffffff和0x61B.-1和98C.-1和97D.指向同一地址14.下列程序执行后的输出结果是(A)void main(){int k=5;while(–k) printf(“%d”,k-=3);printf(“\n”);}A.1B.2C.4D.死循环15.若变量已经正确定义,有下列程序段输出结果的是(B)i=0;do printf(“%d”,i); while(i++);printf(“%d\n”,i);A.0,0B.0,1C.1,1D.程序进入死循环16.设变量已经正确定义,则以下能正确计算f=n!的程序段是(D)A.f=0for(i=1;i<=n;i++)f=i;B.f=1for(i=1;i<n;i++)f=i;C.f=1;for(i=n;i>1;i++)f=i;D.f=1;for(i=n;i>=2;i–)f=i;17.t为int类型,进入下面的循环之前,t的值为0while(t=1){…}则以下叙述中正确的是(B)A.循环控制表达式的值为0B.循环控制表达式的值为1C.循环控制表达式不合法D.以上说法都不对18.以下不正确的说法是(D)A.在不同函数中可以使用相同名字的变量B.形式参数是局部变量C.在函数内定义的变量只在本函数范围内有效D.在函数内的复合语句中定义的变量在本函数范围内有效19.以下程序的执行结果是(B){int x=0,s=0;while(!x!=0)s+=++x;printf(“%d”,s);}A.0B.1C.语法错误D.无限循环20.int a[10]给数组a的所有元素分别赋值为1、2、3、…的语句是(B)A.for(i=1;i<11;i++)a[i]=i;B.for(i=1;i<11;i++)a[i-1]=i;C.for(i=1;i<11;i++)a[i+1]=i;D.for(i=1;i<11;i++)a[0]=1;21.int i,j,a2;按照数组a的元素在内存的排列次序,不能将数1,2,3,4,5,6存入a数组的是(D)A.for(i=0;i<2;i++)for(j=0;j<3;j++)a[i][j]=i3+j+1;B.for(i=0;i<3;i++)for(j=0;j<2;j++)a[j][i]=j3+i+1;C.for(i=0;i<6;i++)a[i/3][i%3]=i+1;D.for(i=1;i<=6;i++)a[i][i]=i;22.以下不正确的说法是:C语言规定(B)A.实参可以是常量,变量或表达式B.形参可以是常量,变量或表达式C.实参可以是任何类型D.形参应与其对应的实参类型一致23.以下正确的说法是:在C语言中(A)A.实参和与其对应的形参各占用独立的存储单元B.实参和与其对应的形参占用一个存储单元C.只有当实参和与其对应的形参同名时才共占用存储单元D.形参是虚拟的,不占用存储单元24.在定义构造数据类型时,不能(D)A.说明变量B.说明存储类型C.初始化D.末尾不写分号25.使用共同体变量,不可以(D)A.节省存储空间B.简化程序设计C.进行动态管理D.同时访问所有成员/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:输出1到100之间每位数的乘积大于每位数的和的数。例如:数字26,数位上数字的乘积12大于数字之和8。-------------------------------------------------------/#include <stdio.h>main(){  int n,k=1,s=0,m;  for(n=1;n<=100;n++)  {    k=1;    s=0;    /SPACE/    m=n;                                    /SPACE/    while(m>0)                            {      k=m%10;      s+=m%10;      /SPACE/      m=m/10;                                    }      if(k>s)      printf("%d “,n);  }}/-------------------------------------------------------【程序填空】---------------------------------------------------------功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。-------------------------------------------------------/#include <conio.h>#include <stdio.h>/SPACE/int fun(int k){  int m=0,  mc=0;  /SPACE/  while (k >= 2 && mc<10)   {  /SPACE/    if (k%13 == 0 || k%170)    {       m=m+k;       mc++;     }    k–;  }  /SPACE/  return m;}main ( ){   printf("%d\n", fun (500));}/-------------------------------------------------------【程序填空】---------------------------------------------------------题目:用折半查找法在有序数组中查找指定元素x-------------------------------------------------------/#include<stdio.h> void main() {  int a[10],x,i,start,end,flag=0;    printf(“输入10个有序数:\n”);    for(i=0;i<10;i++)      scanf("%d",&a[i]);    printf(“please enter the number:\n”);    scanf("%d",&x); /SPACE/   for(start=0,end=9;start<=end;) /SPACE/   {i=(start+end)/2;       if (xa[i])       {   flag=1;   break;  } /SPACE/      else if (x>a[i])start=i+1;           else   end = i-1;  }    if(flag==1)  printf(“found:a[%d]”,i);    else         printf(” not found");   }/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:请编写函数fun,其功能是:将一组得分中,去掉一个最高分和一个最低分,然后      求平均值,并通过函数返回。函数形参a指向存放得分的数组,形参n中存放得分个      数(n>2)。例如:若输入9.9  8.5  7.6  8.5  9.3  9.5  8.9  7.8  8.6  8.4十      个得分,则输出结果为:8.687500。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入      所编写的若干语句。-------------------------------------------------------/#include  <stdio.h>double fun(double  a[ ] , int  n){/Program/ int sum=0,i,max=a[0],min=a[0]; for(i=0;i<n;i++) { sum+=a[i]; if(a[i]>max) max=a[i]; if(a[i]<min) min=a[i]; } return((sum-max-min)1.0/(n-2)); /*********  End  /}void main(){          double  b[10],  r;          int  i;        printf(“输入10个分数放入b数组中 :  “);        for (i=0; i<10; i++)                 scanf(”%lf”,&b[i]);        printf(“输入的10个分数是 :  “);        for (i=0; i<10; i++)                  printf(”%4.1lf “,b[i]);           printf(”\n”);        r = fun(b, 10);        printf(“去掉最高分和最低分后的平均分 :  %f\n”, r );}/-------------------------------------------------------【程序设计】---------------------------------------------------------题目:根据如图Z所示流程图编程。-------------------------------------------------------//Program/#include<stdio.h>void main(){ int x,n,m; float p; n=0; m=0; scanf("%d",&x); while (x>0 && x<100) { n++; if (x<60) m++; else scanf("%d",&x); } p=m/n; printf(“m%d,n%d,p%d”,m,n,p); return 0;}/**  End  **********/

欢迎使用Markdown编辑器

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

新的改变

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

如何改变文本的样式

强调文本 强调文本

加粗文本 加粗文本

标记文本

删除文本

引用文本

H2O is是液体。

210 运算结果是 1024.

插入链接与图片

链接: link.

图片: Alt

带尺寸的图片: Alt

居中的图片: Alt

居中并且带尺寸的图片: Alt

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

如何插入一段漂亮的代码片

博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

// An highlighted block
var foo = 'bar';

生成一个适合你的列表

  • 项目
    • 项目
      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

创建一个表格

一个简单的表格是这么创建的:

项目Value
电脑$1600
手机$12
导管$1

设定内容居中、居左、居右

使用:---------:居中
使用:----------居左
使用----------:居右

第一列第二列第三列
第一列文本居中第二列文本居右第三列文本居左

SmartyPants

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

TYPEASCIIHTML
Single backticks'Isn't this fun?'‘Isn’t this fun?’
Quotes"Isn't this fun?"“Isn’t this fun?”
Dashes-- is en-dash, --- is em-dash– is en-dash, — is em-dash

创建一个自定义列表

Markdown
Text-to- HTML conversion tool
Authors
John
Luke

如何创建一个注脚

一个具有注脚的文本。2

注释也是必不可少的

Markdown将文本转换为 HTML

KaTeX数学公式

您可以使用渲染LaTeX数学表达式 KaTeX:

Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n1)!nN 是通过欧拉积分

Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=0tz1etdt.

你可以找到更多关于的信息 LaTeX 数学表达式here.

新的甘特图功能,丰富你的文章

Mon 06 Mon 13 Mon 20 已完成 进行中 计划一 计划二 现有任务 Adding GANTT diagram functionality to mermaid
  • 关于 甘特图 语法,参考 这儿,

UML 图表

可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:

张三 李四 王五 你好!李四, 最近怎么样? 你最近怎么样,王五? 我很好,谢谢! 我很好,谢谢! 李四想了很长时间, 文字太长了 不适合放在一行. 打量着王五... 很好... 王五, 你怎么样? 张三 李四 王五

这将产生一个流程图。:

链接
长方形
圆角长方形
菱形
  • 关于 Mermaid 语法,参考 这儿,

FLowchart流程图

我们依旧会支持flowchart的流程图:

Created with Raphaël 2.2.0 开始 我的操作 确认? 结束 yes no
  • 关于 Flowchart流程图 语法,参考 这儿.

导出与导入

导出

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

导入

如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。


  1. mermaid语法说明 ↩︎

  2. 注脚的解释 ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值