1. c语言选择题求解 快
你是湖北汽车工业学院的学生吧?这是学校机房无忧考试系统C语言A卷里面的题目吧?
以下给你详解:希望课后能仔细推敲认真考证,不枉汽院学子之身份!
以下能正确定义字符串的语句是___D___。
A char str[]={'\064'};
B char str='';
C char str="\x43";
D char str[]="\0";
A)定义的是字符数组,这个数组只有一个元素。字符串必须以'\0'结束,因此A定义的不属于字符串。如果改为
char str[2]={'\064'}; //没有赋值的第二个元素str[1]被初始化'\0',符合字符串定义。
char str[]={'\064','\0'}; 则是正确的。
4. 能正确表示a和b同时为正或同时为负的逻辑表达式是 ___D___。
A (a>=0||b>=0)&&(a<0|| b<0)
B (a+b>0)&&(a+b<=0)
C (a>=0&&b>=0)&&(a<0&&b<0)
D a*b>0
考察的是最基本的 || (或) 与 &&(且)的区别
2. 下列选项中正确的语句组是__D____。
A char s[8]; s={"Beijing"}
B char s[8]; s="Beijing"
C char *s; s={"Beijing"}
D char *s; s="Beijing"
解析:(A,B)中 s不是指针,它只是代表数组的首地址,s不能被赋值(作为左值),可以这样char s[8]="beijing"; s它只是代表数组首元素的地址,它是常量,不能被更改。
(C,D)中 char *s;s="beijing"这样系统会在栈里面开辟一个空间,里面放的内容是"beijing",而s指向它的首地址;然而char *s;s={"beijing"};这样写会有两个问题,第一,由于s只是一个指针,它只能指向一个地址,但是这个地址还没有分配内存空间。二,这种写法只能用于字符数组的初始化,如char s[] ={"beijing"};
3. 按照C语言规定的用户标识符命名规则,不能出现在标识符中的是__B____。
A 大写字母
B 连接符
C 下划线
D 数字字符
纯语法的考察,下去看书,第一章
若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是_C
A scanf("%d%d%d",a,b,c);
B scanf("%d",a,b,c);
C scanf("%d",p);
D scanf("%d",&p);
Scanfj函数("%类型",地址)
Scanf函数"格式控制"后面应当是变量地址,而不是变量名。
7. 执行以下程序段后,w的值为______。
int w='A',x=14,y=15;
w=((x||y)&&(w<'a'));
A NULL
B -1
C 1
D 0
解析: 因为(x||y)&&(w<'a'))正确,所以赋给W的值为1(表示正确),如果前面的式子错误则返回的值为0(表示错误) 。
9. 以下列出C语言常量中,错误的是__B____。
A '\72' 8进制表示形式,等于=58
B 1.2e0.5 e (或E)之前必须有数字,且后面的指数必须为整数
C 2L
D OxFF 16进制的表示形式
10.设ch是char型变量,其值为A,且有下面的表达式
ch=(ch>='A'&&ch<='Z')?(ch+32):ch
上面表达式的值是___B___。
A A
B a
C z
D Z
12. 以下不能正确计算代数式3 2值的C语言表达式是______。(注:前面一列数字为1/3的Sin(1/2)^2)
A pow(sin(0.5),2)/3
B sin(0.5)*sin(0.5)/3
C 1/3*sin(1/2)*sin(1/2)
D 1/3.0*pow(sin(1.0/2),2)
14.有以下公式
根号下X (x>=0)
y={
根号下-X (X<=0)
若程序前面已在命令行中包含math.h文件,不能够正确计算上述公式的程序段 C
A if(x>=0) y=sqrt(x);
else y=sqrt(-x);
B if(x>=0) y=sqrt(x);
if(x<0) y=sqrt(-x);
C y=sqrt(x);
if(x<0) y=sqrt(-x);
D y=sqrt(x>=0?x:-x);
15. 若x和y都是int型变量,x=100、y=200,且有下面的程序片段
printf("%d",(x,y) );
上面程序片段的输出结果是___C___。
A 100 200 B100 C 200
D 输入格式符不够,输出不确定的值
17. 以下不合法的数值常量是___C___。
A 0xabcd B le1 C 8.0E0.5 D 011
23. 下列叙述中正确的是___C___。
A 每一个C程序文件中都必须要有一个main()函数
B 在C程序中main()函数的位置是固定的
C 在C程序的函数中不能定义另一个函数
D C程序中所有函数之间都可以相互调用,与函数所在位置无关
26. 在C语言中,函数中变量的隐含存储类别是___A___。
A auto B stati C extern D 无存储类别
29. 以下错误的定义语句是____C__。
A int x[4][3]={{1,2,3},{1,2,3},{1,2,3}{1,2,3}};
B int x[][3]={{0},{1},{1,2,3}};
C int x[4][]= {{1,2,3},{1,2,3},{1,2,3}{1,2,3}};
D int x[][3]={1,2,3,4};
还有不懂的,直接追问!
2. c语言计算机二级考试选择题如图
全国计算机二级考试试题题库(附答案)
下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题
卡相应位置上涂黑,答在试卷上不得分。
(1) 应用软件是指
A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件
C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件
(2) 下列述叙中错误的是
A) 计算机要经常使用不要长期闲置不用
B) 为了延长计算机的寿命,应避免频繁开关计算机
C) 在计算机附近应避免磁场干扰
D) 计算机用几小时后,应关机一会儿再用
(3) 下列字符中,ASCII码值最小的是
A) A B) a C) Z D) x
(4) 用晶体管作为电子器件制成的计算机属于
A) 第一代 B) 第二代 C) 第三代 D) 第四代
(5) 下列各不同进制的四个无符号数中,最小的数是
A) ()2 B) (37)8 C) (75)10 D) (2A)16
(6) 二进制数转换成十六进制数是
A) B) C) D)
(7) 下列各无符号十进制数中,能用八位二进制表示的是
A) 296 B) 333 C) 256 D) 199
(8) 计算机的软件系统可分类为
A) 程序与数据 B) 系统软件与应用软件
D) 操作系统与语言处理程序 D) 程序、数据与文档
(9) 486机中的CPU同时能处理的二进制位数为
A) 8 B) 16 C) 32 D) 64
(10) 在使用计算机的过程中,需要重新启动DOS,则要
A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键
(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机
电源;②将该软盘插入A驱动器;③关好A驱动器门。则冷启动的操作顺序应为
A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①
(12) 设当前盘中某一文件路径为\A\C\B\,当前目录为\A。下列命令中错误的是
A) CD.. B) RD \A\C\B
C) TYPE \A\C\B\ D) TYPE C\B\
(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件
的内容,应使用命令
A) TYPE \AB B) TYPE \AB\
C) TYPE \ D) DIR \AB\
(14) 自动批处理文件必须放在
A) C盘根目录中 B) A盘根目录中
C) 启动盘的任一个目录中 D) 启动盘的根目录中
(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正
确执行的是
A) RD C:\USER\XY\P B) RD USER\XY\P
C) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y
(16) 下列DOS命令中,合法的是
A) DISKCOMP B) TYPE >>
C) COMP A: B: D) COMP A: A:
(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错
误的是
A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:
(18) 下列DOS命令中错误的是
A) TYPE >PRN B) TYPE PRN
C) COPY *.TXT PRN D) COPY CON PRN
(19) 下列四组DOS命令中,互相等价的一组是
A) COPY A:*.* B:与DISKCOPY A: B:
B) COPY +与TYPE >>
C) COPY + 与COPY +
D) TYPE *.FOR>CON与COPY *.FOR CON
(20) 设C盘目录结构如下:
且C盘根目录下文件的内容为
CD FORTRAN
CD \TC
如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统
文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是
A) COPY A:\*.C B) COPY A:\*.C TC
C) COPY A:\*.C FORTRAN D) CD USER
(21) C语言提供的合法的数据类型关键字是
A) Double B) short C) integer D) Char
(22) 在C语言中,合法的长整型常数是
A) 0L B) 4962710 C) D)
(23) 表达式:10!=9的值是
A) true B) 非零值 C) 0 D) 1
(24) 合法的C语言中,合法的长整型常数是
A) '\t' B) "A" C) 65 D) A
(25) 若有说明和语句:
int a=5;
a++;
此处表达式a++的值是
A) 7 B) 6 C) 5 D) 4
(26) 在下列选项中,不正确的赋值语句是
A) ++t; B) n1=(n2=(n3=0)); C) k=i==j; D) a=b+c=1;
(27) 若有说明:int i,j=7, *p=&i;,则与i=j;等价的语句是
A) I= *P; B) *P=*&J; C) i=&j; D) i=* *p;
(28) 不能把字符串:Hello!赋给数组b的语句是
A) char b[10]={'H','e','l','l','o','!'};
B) char b[10];b="Hello!";
C) char b[10];strcpy(b,"Hello!");
D) char b[10]="Hello!";
(29) 若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为4的表达式是
A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]
(30) 若有以下说明:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为6的表达式是
A) *p+6 B) *(p+6) C) *p+=5 D) p+5
(31) 若有以下说明:
int w[3][4]o={{0,1},{2,4},{5,8}};
int(*p)[4]=w;
则数值为4的表达式是
A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]
(32) 若程序中有下面的说明和定义
struct abc
{int x;char y;}
struct abc s1,s2;
则会发生的情况是
A) 编译进错 B) 程序将顺利编译`连接`执行
C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错
(33) 能正确表示a≥10或a≤0的关系表达式是
A)a>=10 or a<=0 B)a>=10│a<=0
C)a>=10││a<=0 D)a>=10 ││a<=0
(34) 下面程序的输出是
main()
{ int x=3,y=6,a=0;
while(x++!=(y+=o1))
{ a+o=1;
if(y
#include
main()
{ char ss[10]="12345";
strcat(ss,"6789");
gets(ss);printf("%s\n",ss);
}
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(35) 下面程序的输出是
main()
{ char *a="";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{ default:v4++;
case '1': v1++;
case '3': v3++;
case '2': v2++; }
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }
A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1
C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8
(36) 下面程序的输出是
main()
{int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}
A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b
(37) 若有以下程序段,w和k都是整型变量:
┆
w=k;
LB: if(w==0) go to LE;
w--;
printf("*");
goto LB;
LE: ┆
则不能与上面程序段等价的循环语句是
A)for(w=k;w!=0;w--) printf("*"); B)for(w=k;w;--w)printf("*");
C)w=k; D)w=k;
while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);
(38) 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是
A)*p=&a; scanf("%lf",p); B)p=(double *)malloc(8);scanf("%f",p);
C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p);
(39) 当执行下面程序且输入:ABC时,输出的结果是
#include
#include
main()
{ char ss[10]="12345";
gets(ss);printf("%s\n",ss); }
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(40) 若有以下的说明和语句:
main()
{int t[3][2], *pt[3],k;
fpr(k=o; k<3;k++)pt[k]=t[k];
}
则以一选项中能正确表示t数组元素地址的表达式是
A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2]
(41) 下面程序输出数组中的最大值,由s指针指向该元素.
main()
{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;
flr(p=a, s=a; p-a<10; p++)
if(---?---)s=p;
printf("The max:%d",*s):
}
则在if语句中的判断表达式应该是
A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s
(42) 下面程序的输出是
#include
main()
{ char*a="abcdefgh";
fun(a);puts(a); }
fun (char * s)
{ int x=0,y;char c;
for(y=strlen(s)-1;x
A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba
(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句
中实参的个数是
A)3 B)4 C)5 D)6
(44) 下面程序的输出是
main()
{ int t=1; fun(fun(t));}
fun(int h)
{ static int a[3]={1,2,3};
int k;
for(k=0;k<3;k++) a[k]+=a[k]-h;
for(k=1;k<3;k++) printf("%d",a[k]);
printf("\n"); return(a[h]);}
A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,
1,5,9, 1,3,5, 0,4,8, -1,3,7,
(45) C语言中,函数的隐含存储类别是
A)auto B)static C)extern D)无存储类别
(46) 下面程序的输出是
int w=3;
main()
{ int w=10; printf("%d\n",fun(5)*w); }
3. 求c语言试题及答案!急啊!
c语言考试题(一)
一、 单项选择题(每题2分,共20分)
1、以下选项中属于C语言的数据类型是( )
A.复数型 B.逻辑型 C.集合型 D.双精度型
2、一个C程序的执行是从( )
A.main()函数开始,直到main()函数结束 B.第一个函数开始,直到最后一个函数结束
C.第一个语句开始,直到最后一个语句结束 D.main()函数开始,直到最后一个函数结束
3、设有语句int a=3;则执行语句a+=a-=a*a;后,变量a的值是( )
A.3 B.0C.-12D.9
4、若有 char c[5]={'c','d','\0','e','\0'};则执行语句printf("%s",c);结果是( )。
A.cd\0e B.'c''d' C.cd D.cd e
5、已知:int a[2][3]={1,2,3,4,5,6}, (*p)[3]=a;则下列表达式不是4的是 ( )。
A.*(*p+3) B.*p+3 C.*(*(p+0)+3) D.a[0][3]
6、以下有宏替换不正确的叙述( ).
A.宏替换不占用运行时间 B.宏名无类型
C.宏替换只是字符串替换 D.宏名必须用大写字母表示
7、执行char str[10]=”Ch\nina”; strlen(str)的值是( )
A.5 B.6 C.7 D.9
8、下面程序的输出结果是:( )
#define POWER(x) (x*x)
main()
{int i=4; printf("%d",POWER(i-2)); }
A. -9 B. -7 C. 5 D. -6
9、在定义int a[3][4][2];后,第10个元素是( )
A.a[2][1][2] B.a[1][0][1] C.a[2][0][1] D.a[2][2][1]
10、下面程序的输出结果是:( )
typedef struct
{long x[2];<br>short y[4];<br>char z[8];<br>}MYTYPE;
MYTYPE a;
main()
{ printf("%d\n",sizeof(a));}
A. 2 B. 8 C. 14 D. 24
二、 填空题(每空1分,共11分)
1、字符串"A"在内存中占用的字节数为 。
2、C语言中的标识符只能由字母、下划线和 组成。
3、若有定义语句“ int a=25,b=14,c=19;",以下语句的执行结果是
if(a++<=25&&b--<=2&&c++) printf("***a=%d,b=%d,c=%d\n",a,b,c);
else printf("###a=%d,b=%d,c=%d\n",a,b,c);
4、有如下定义a[]="B\172\\\'a%%";则执行语句printf("%d",strlen(a));的结果为 。
5、若有定义:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i; for(i=0;i<4;i++) p[i]=&a[i*3];则*(*(p+1)+2)的值为 ,*p[2]的值为 。若数组的首地址为2000,则p[1]指向的地址为 。
6、设a=2,b=3,x=3.5,y=2.5,则表达式(float)(a+b)/2+(int)x%(int)y 的结果是 。
7、设x、y都是int型变量,初值都为1,则执行表达式:--x&&y++后,y的值为 。
8、语句for(i=1;i==10;i++)continue;循环的次数是 。
9、以下程序输出 。
main()
{enum em {em1=3,em2=1,em3};
char *aa[]={"AA","BB","CC","DD"}; printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);
}
三、 写程序结果(每题5分,共35分)
1、#include
main()
{int x,y,z;<br>x=1,y=2,z=3; x+=y+=z;<br>printf("1:%d\n",z+=x>y?x++:y++);<br>x=0x02ff;y=0xff00;<br>printf("2:%d\n",(x&y)>>4|0x005f);<br>x=y=z=-1; ++x||++y&&++z;<br>printf("3:%d,%d,%d\n",x,y,z);<br>}
2、#define f(x) x*x
main()
{int a=6,b=2,c;<br>c=f(a+b)/f(b);<br>printf(“%d\n”,c);<br>}
3、fun(int k)
{ printf("%d",k);
if(k>0)
fun(k-1);
}
main( )
{ int w=5; fun(w); printf("\n"); }
4、#include
main()
{int x=1,y=0;<br>switch(x)<br>{ case 1:<br>switch(y)<br>{ case 0:printf(“first\n”);break;<br>case 1:printf(“second\n”);break;<br>}
case 2:printf(“third\n”);
}
}
5、#include
main()
{ int k=4;
func(k); func(k);
}
func(int a)
{ static int m=0;
m+=a;
printf("%d",m);
}
6、struct st
{ int x;
int *y;
}*p;
int s[]={30,20};
struct st a[]={1,&s[0],2,&s[1]};
main()
{ p=a; printf("%d,",p->x);
printf("%d\n",++(*(++p)->y));
}
7、假定在当前盘目录下有2个文本文件,其名称和内容如下:
文件名: a1.txt a2.txt
内容: ABCDEF# abcdef#
#include "stdio.h"
main()
{FILE *fp;<br>void fc();<br>if((fp=fopen("a1.txt","r"))==NULL)<br>{printf("Can not open file!\n"); exit(1);}
else{fc(fp);fclose(fp);}
if((fp=fopen("a2.txt","r"))==NULL)
{printf("Can not open file!\n"); exit(1);}
else{fc(fp);fclose(fp);}
}
void fc(fp1)
FILE *fp1;
{char c;<br>while((c=fgetc(fp1))!='#')putchar(c);<br>}
四、 程序填空(每空2分,共14分)
1、下面程序求矩阵a的主对角线元素之和,请填空。
main()
{ int a[3][3]={2,4,6,8,10,12,14,16,18};
int sum=0,i,j;
for(i=0;i<3; ① )
for(j=0; ② ;j++)
if(i= =j) sum=sum+ ③ ;
printf("sum=%d\n",sum);
}
2、下列函数coy把字符数组S2中的全部字符复制到字符数组S1中, 复制时’\0’也要复制过去,’\0’后面的字符不用。
coy(char s1[],char s2[])
{ int i;
for(i=0;s2[i]!= ① ;i++)
s1[i]=s2[i];
② ;
}
3、下面程序的功能是将字符串a中的下标为奇数的元素由小到大排序,其他元素不变,请填空。
main()
{ char a[]="students",t; int i,j;
for(i=1;i<7;i+=2)
for(j=i+2;j<8; ① )
if( ② )
{t=a[i];a[i]=a[j];a[j]=t;}
puts(a);
}
c语言考试题(二)
一. 填空题(每题2分,共20分)
1. C语言基本数据类型有:_______________________________;
构造类型有:_____________________________________。 P.13
2. C语言源程序注注释符号是:________________________________,
为表明层次结构,C语言源程序通常采用_____________________格式编写。P.4
3. 源程序TEST.C经编译产生的目标文件是:________________________;
经连接处理后,产生的可执行文件是:__________________________。
4. strlen(“1234 \ 0xy)的值为:_____________________________;
sizeof(float)的值为:____________________________
5. 二维数组a[10] [50]最后一行的首地址为:_________________________;
最后一个元素的首地址为:____________________________________。
6. C标准库函数中,数学函数的原型在:________________头文件中,自定义头文件D :\ MYC \ MY . H应如何包含到源程序文件中:_________________________。P.130
7. 已知函数定义为:int stat(inta,float *p)
{……………}
则此函数的两个参数类型分别是_______________ 、 _____________________。
8. 设int x,y,z=4;
x=y=++z;
x=(y>z)?x+2;x++;则x的值是:_________;
设int a=0,b=0,c=0;c=++a | | b++; ,则a、b、c值分别是:_____________。
9. 与if (x=0) 等价的写法是if ( ! x );
判断两个(float)变量x,z是否相等一般:if ( fabc(x-z)<1e-6 )。
10.已知赋值语句zhang.year=1985;可判断zhang是_______________类型的变量;
定义文件指针的C语句是:_________________________________。
二. 单项选择题 (每题1分,共10分)
1. 组成C程序的基本单位是____________________________。
A.函数 B.标识符 C.表达式 D.语句
2. 设int类型的数据长度为2字节,则该类型数据的取值范围是__________________。
A.0至65536 B.0至65535
C.-32767至32768 D.-32768至32767
3. 在C语言中,逻辑值“真”是用_____________________表示的。
A.预定义为真值的宏 B.非零数
C.正数 D.非零整数
4. C语言对于嵌套if语句规定else总是与_____________________匹配。
A.与最外层的if B.与之前最近的if
C.与之前最近的不带else的if D.与最近的{ }之前的if
5. 数组定义char a[10]={`a`,`b`,`c`}:包括了几个元素____________________。
A.3 B.9 C.4 D.10
6. 数组名作为实参传给被调用的函数时,形参获得的是_____________________。
A.该数组第一个元素的值 B.该数组所有元素的值
C.该数组第一个元素的首地址 D.该数组所有元素的首地址
7. 为表示关系x ≥ y ≥z,正确的C语言表达式为_________________________。
A.(x>=>y>=z) B.(x>=y)AND(y>=z)
C.(x>=y)&&(y>=z) D.(x>y)&(y>=z)
8. 根据定义int a[ ]={1,2,3},i,*p=a; 从语法分析_________________是不正确的。
A. a[p-a] B.*(&a) C.p D.*(*(a+i))
9. 若有语句scanf(“%d%d”,&a,&b);要使变量a,b分别得到12和34;正确的输入形式为____________________________。
A.12 34 B.12,34 C.1234 D.12:34
10.union uex {int i;float f;char c;}ex;则sizeof(ex)的值是____________________。
A.4 B.5 C.6 D.7
三. 分析程序,写出运行结果。(每题4分,共20分)
1. 源程序如下,运行时假定键盘输入字符串为``2004``
#include
void main(void)
{
int n=0;
char c;
while( (c=getchar( )) ! =`\n` ) /*字符型数字*/
{
if (c>=`0`&&c<=`9` )
n = n*10 + c- `0` ; /*数字*/
}
printf(“value=%d|n” ,n);
}
结果为: value=2004 。
2. 源程序如下:
#include
void main(void)
{
int num[9]={399,398,397,396,395,299,290,311,301};
int score[9]={81,85,59,77,90,66,89,93,73};
int iMax,iPos,i;
iPos=0;
iMax=score[iPos];
for(i=1;i<9;i++)
if(score>iMax)
{
iPos=i;
iMax=score[iPox];
}
printf(“num=%d,score=%d”,num[iPos];score[iPos]);
结果为: num=311, score=93 。
3. 源程序如下,运行时假定键盘输入数据为:1 2 3 4 5 6 7 8 9 10
#include
void main(void)
{
int i,a[10];
int *p;
p=a;
for(i=0;i<10;i++)
scanf(“%d“,p++);
for(p=a;p< SPAN>;p++)
if (*p%2)printf(“%3d”,*p);
}
结果为: 1 3 5 7 9 。
4. 源程序如下,两次运行,分别输入数据13和21
#include
#include
void main(void)
{
int n,s;
scant (“%d”,&n);
s=panan( n);
if(s==1)printf(“yes\n”);
else printf(“no\n);
}
int panan(int n)
{
int k,j;
k=(int)sqrt((double)n);
for(j=2;j<=k,j++)
{
if(n%j==0) break;
}
if(j>k) retum(1);
else retum(0);
}
结果为 yes
no
5.源程序如下,运行时假定键盘输入字符为:AxByCz
#include
#include
void main(void)
{
char str[80];
int i;
gets(str);
for(i=0;str!=`\0`;i++)
if(str>=`a`&&str<=`z`) str-=32;
else if (str>=`A`&&str<=`Z`) str+=32;
puts(str);
}
结果为: aXbYcZ 。
四. 下列程序中每个划线处有一个错误,改正划线 中的错误,使其实现题目要求。(每体4分,共20分)
1. 求 s=1+2+3+、、、、、、、+100
include 改正为_________________________。
void sum (void) 改正为_________________________。
{
int s,i;
for (s=0,i=1;i<=100;i++)
{
s=s+ i ++; 改正为__________________________。
}
printf (“s=%f”,s) 改正为__________________________。
}
2. 源程序实现求x
#include
double pow(float . int) 改正为_________________________。
void main(void)
{
int i, n;
float x;
scanf (“%f,%d”,&x,&n);
for (i=1; i<9;i++)
printf(“%d,%e\n”, i, pow(i,x);
} 改正为______________________。
double v v pow(float x, int n)
{
int i;
double p=0; 改正为______________________。
for (i=1; i< i++)>改正为_______________________。
p*=x;
retum(p);
}
3. 源程序实现排升序。
#include
void main(void)
{
int i, j, iMin, a[10]={4,3,5,1,10,12,2,6,7,9}, iTemp;
for (i=0; i<9; i++)
{
iMin=0; 改正为_______________________。
for (j=i+1; j<10;j++)
if(a[iMin]< iMin="j;">改正为_______________________。
if (iMin==i) 改正为_________________________。
{ iTemp=a;
a[iMin]=a; 改正为_________________________。
a[iMin]=iTemp;
}
}
for(i=0; i<10; i++)
printf(“%4d”, a):
}
4. 源程序为求平均值。
#include
void main(void)
{
int i, sum; 改正为____________________。
float avg;
int sc[10], *p=sc;
for (i=0, i<10; i++) 改正为____________________。
{
scanf(“%d”, p++);
sum+= *p; 改正为____________________。
}
avg = sum/ 10; 改正为___________________。
printf(“avg=%f”, avg);
}
5. 源程序求 eX=1+x+x2/2!+……+xn/n!前n+1项之和
#include
void main(void>
{
float exp , x , t;
int i, n;
scanf(“%f, %d”,&x, &n);
t=0; 改正为___________________。
exp=1.0;
for(i=1 ; i<=n; i++)
{
if(t<1e-6) loop; 改正为__________________。
t+=x/i; 改正为___________________。
exp*=t; 改正为___________________。
}
printf(“\n%15.6f”, exp);
}
五. 编程题 (每题6分,共30分)
1. 根据以下程序框架,编写子函数,实现交换两个整型变量x和y的值。
#include
void swap (int *, int *);
void main (void)
{
int x, y;
scanf(“%d, %d”, &x, &y);
swap( &x, &y);
printf(“%d, %d”, x, y);
}
void swap( )
{
}
2. 设某班人数36人,参加C语言考试,用一维数组score[36]存放考试成绩,已给出一部分程序,完善以下程序,使其实现统计并输出不及格人数及百分比。
#include
void main (void)
{ int i;
float scoer[36], precent;
int count=0;
for (i=0; i<36; i++)
{
scanf(“%f”, &score);
}
3. 完善以下程序使其实现由键盘任意输入一串字符,统计其中大写字母个数iA、小写字母个数ia、其他字符个数iother。
#include
#include
void main (void)
{
char str [80];
int i, iA=0, ia=0, iother=0;
}
4. 完善以下程序使其实现求方阵主和辅对角线元素之和及其转置矩阵,设方阵用二维数组a表示,转置矩阵用t表示,sl和s2表示主和辅对角线元素之和。
#include
void main(void)
{
int a[3] [3]={1,3,5,7,9,11,13,15,11};
int i, j, s1, s2;
int t[3] [3];
printf(“%d, %d,\n”,s1, s2);
for(i=0; i<3; i++)
for(j=0; j<3; j++)
printf(“%3d”, t [j]);
}
5. 已知字符数组str[80],编写返回指针的子函数,实现在其中查找字符ch首次出现的位置。
#include
#include
#include
char *lstrchar(char*, char);
void main(void)
{
char c, *p, str[80];
gets (str);
scanf(“%c”, &c);
p=lstrchar(str,c);
if(p==NULL) printf(“char %c not found\n”c);
else printf(“The position is %d”, p-str);
char “lstrchar( )
{ }
历年全国计算机二级考试c语言真题及答案
http://jsj.lsxy.com/UploadFiles/20064222324839.rar
4. 万维全自动网络考试平台怎么进行下一题
万维全自动考试系统操作手册,万维考试系统,万维考试系统下载,万维全自动考试系统,万维考试系统怎么卸载,万维自动考试系统下载,万维考试系统客户端,万维考试系统题库,万维捷通考试系统,万维网考试系统
万维全自动网络考试平台
考试设置操作流程
万维全自动网络考试平台1
考试设置操作流程1
全自动网络考试平台考试操作设置流程3
一、考试前准备工作3
1、考试系统的安装3
(1)配置服务端3
(2)配置客户端的安装4
2、为教师分配权限5
3、创建考试试题库6
4、学生管理6
4.1导入考生信息6
5、方案管理9
5.1方案管理9
5.2方案参数设置12
5.3根据所选方案创建试卷13
5.4分配任务14
6、参数管理17
二、考试中管理工作19
7、考试过程中的注意事项19
8、启动考试服务19
9、考生登陆考试系统20
10、考生答题20
11、考生提交试卷21
12、监控管理22
三、考试后成绩处理工作25
13、考生成绩的查询与统计分析25
13.1统计管理26
注意:统计报表必须要四个以上学生完成考试才可以导出。29
15、备份/导出服务器数据库29
全自动网络考试平台考试操作设置流程
全自动网络考试平台考试流程分为三个阶段,即考试前准备、考试中管理、考试后成绩处理,整体流程如下:
一、考试前准备工作
1、考试系统的安装
考试系统服务端、客户端安装完成后,需要对服务端、客户端进行相应配置。
(1)配置服务端
首次启动考试系统管理平台,将显示连接到SQL Server提示窗口,如下图所示:
如果考试系统管理平台与SQL Server安装在同一台机器上,点击“确定”按钮即可,否则请输入SQL Server服务器的名称或IP地址。
点击“刷新”按钮,系统将自动检测可以连接的SQL Server服务器名称或地址,如获取成功将在列表中显示全部SQL Server服务器名称或地址,选择正确的地址进行连接,如下图所示:
(2)配置客户端的安装
客户端安装完成后,必须使用客户端配置工具对考试服务器数据库IP地址和考试服务器端IP地址进行配置。执行开始菜单中“开始—程序—万维全自动网络考试系统—客户端配置工具”或“客户端安装目录下的C_Config.exe” 后出现如下图所示的窗口。
考试客户端配置工具用来更新考试环境、显示当前的考试环境信息、配置考试服务器数据库的IP地址、考试服务器端IP地址进行配置。
对于服务器数据库未安装在默认实例或未使用SQL Server默认端口的情况,可以按照“IP\实例名,端口号”格式配置服务器IP地址。
输入正确的IP地址并测试连接成功后,配置完成后可以单击“保存”按钮进行保存。“刷新”按钮的功能是重新进行本机考试环境的检查,并刷新当前的环境信息。完成“保存”和“刷新”操作之后单击“关闭”结束客户端的配置。配置完成后也可以单击“保存并启动考试系统”按钮,保存后直接启动考试系统客户端。
2、为教师分配权限
通过考试系统管理平台中“权限管理”功能,可以为不同的教师分配不同的管理功能、科目权限,使其执行不同的功能模块,维护不同科目的试题。
3、创建考试试题库
通过考试系统管理平台中“题库管理”功能,学校可以根据教学需要组织教师对题库中试题进行创建、修改试题等操作。考试之前应根据考试的需要进行题库的管理,增加新的试题或者修订错误的试题,准确和优质的试题是考试顺利进行的必要条件。
4、学生管理
4.1导入考生信息
点击“学生管理”,如下图:
如上图所示:进入考试系统,点击学生管理。如下图:
点击导入旁的小三角,选择“学生资料”一项,进入如下界面:
点击“选择文件”按钮,如下图所示:
界面中间显示的有导入模板中数据的必填项、选填项和一些注意事项(如果没有模板的可以点击“模板”按钮,保存名单模板。注意:模板中的列名不允许更换位置或者删除)。按照模板要求将学生名单准备好之后,点击“导入”,选择学生名单所在路径的excel名单(现在只能支持excel 2003格式文件的导入)后,等待数据上传,结果如下如图:
检查页面中间显示的名单内容,无误之后,点击开始导入,可以将学生名单导入系统数据库。
这样学生名单就导入完成。
5、方案管理
通过考试系统管理平台中“方案管理”模块中的创建方案功能,设置方案的题型并选择该题型下指定章节、难度等条件作为组卷的规则,创建考试方案,满足不同考试的需要。
5.1方案管理
点击“试卷管理”,如下图:
点击“方案管理”,所示如下:
点击“方案”按钮旁的小三角,选择“创建”这一项(注意:创建哪一门科目的方案,就选择哪一门),所示如下:
方案名称:给这个方案起一个别名,方便区分。
模式:分为“联系”“考试”“作业”“实验”。(由老师自己选择)
共享:是否只能创建人才可以查看、编辑。
以上都设置好了之后,双击所属科目下的题型类别,如下所示:
把分数、题目数量、难度、知识点等设置好了之后,点击“确认”按钮,即这类题型设置完毕。
以上都设置
文章知识点与官方知识档案匹配
C技能树首页概览
打开CSDN,阅读体验更佳
万维考试客户端.rar
计算机考试二级模拟系统。
5. 大一C语言期末考试求题库
一、单项选择题(共10题,每题2分,共20分。在备选答案中选择一个最佳答案。多选、错选、不选不得分)
1、不是C语言基本数据类型的是( )。
A、指针类型 B、整型
C、字符型 D、实型
2、设有:int a=3, b= 4, c= 5,x , y; 表达式0 && (x=a)&&(y=b)的值为( )。
A、1 B、0 C、3 D、4
3、设有语句 int a=3 ; 则执行了语句 a+=6;后,变量a 的值为( )。
A、18 B、-3 C、9 D、12
4、执行以下程序段后,输出的y值为( )
void main()
{ int a[]={2,4,6,8,10};
int y, *p;
p=&a[0];
y=*p; printf(“%d”,y);
}
A、2 B、4 C、6 D、8
5、有定义语句:float a[4];则分配给数组a的内存空间为( )字节。
A、 20 B、 12 C、 16 C、10
6、以下描述错误的是( )。
A、break语句可用于while语句。
B、break语句和continue语句的作用是一样的。
C、在循环语句中使用break语句是为了跳出循环,提前结束循环。
D、在循环语句中使用continue语句是为了结束本次循环,而不终止整个循环。
7、C语言中规定,if语句的嵌套结构中,else总是( )。
A、与最近的if 配对 B、与第一个if 配对
C、按缩进位置相同的if配对 D、与最近的且尚未配对的if 配对
8、说明语句“int (*p)( ); ”的含义是( ) 。
A、p是一个指向一维数组的指针变量。
B、p是指针变量,指向一个整型数据。
C、p是一个指向函数的指针,该函数返回一个int型数据。
D、以上都不对。
9、以下对二维数组c的正确声明是 ( ) 。
A、int c[3][ ]; B、int c(3,4);
C、int c(2)(2); D、int c[3][2];
10、下述程序段执行后输出结果为( )。
int x=100, y=200;
printf ("% d", (x, y));
A、100 B、200 C、100,200 D、编译出错
二、填空题(共7题,共10空,每空1分,共10分。将答案填在题中横线上)
1、C语言提供的三种逻辑运算符是 && 、 || 和!;
2、函数的返回值是通过函数中的 return 语句获得的。
3、在"int a[ ][3]={{1},{3,2},{4,5,6},{0}};"定义后,a[2][2]的值为_6__ _;
4、对于"int *pa[5];" pa是一个具有5个元素的_数组指针_,每个元素是一个指向int型变量的__指针__;
5、单向链表的尾节点next指针应赋值__ NULL___;
6、在语句for(x=1,y=3;x>y;y++)中循环体执行的次数为 0 。
7、int a[5];数组a的首地址为2000,则元素a[1]的地址为 2002 ,元素a[2]的地址为 2004 。
三、程序填空题(共2题,共5空,每空4分,共20分)
1、以下程序完成计算1-1/2+1/3-1/4+1/5+……前n 项和,请填空。
#include <stdio.h>
int main( )
{ int i, n, flag;
float sum;
scanf("%d", &n);
flag= 1 ;
sum=0;
for(i=1;i<=n; i++ )
{ sum+=(float)flag/i;
flag=-flag ;
}
printf("%.3f\n", sum);
}
2、以下程序的功能是从键盘输入n个整数,统计其中正数、0、负数的个数,请填空。
#include <stdio.h>
void main( )
{int a, i, count1,count2,count3;
count1=count2=count3=0 ;
for(i=1;i<=n;i++)
{ scanf(“%d”, &a);
if(a>0) count1++;
else if(a==0) count2++ ;
else count3++;
}
printf(“正数:&d个,零:%d个,负数:%d个\n”, count1,count2,count3 );
}
四、运行程序结果题(共4题,每题6分,共24分)
1、写出程序运行结果。
void main( )
{ int x=1,y=2,t;
int *p1,*p2;
p1=&x; p2=&y;
t=*p1;*p1=*p2;*p2=t;
printf("x=%d,y=%d\n",x,y);
}
运行结果为:
程序有错,不能运行!或写:
x=2,y=1
2、写出程序运行结果。
#include<stdio.h>
int max(int a,int b)
{ int c;
c=a>b?a:b;
return(c);
}
int min(int a,int b)
{int c;
c=a<b?a:b;
return(c);
}
void main()
{ int a=2,b=6;
printf("max=%d\n",max(a,b));
printf(“min=%d\n”,min(a,b));
}
运行结果为:
程序有错,不能运行!或写:
max=6
min=2
3、写出程序运行结果。
#include <stdio.h>
void main()
{ int a[3][3]={1,2,3,4,5,6,7,8,9};
int i,j,sum=0;
for (i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j) sum=sum+a[i][j];
printf(“sum=%d\n”,sum);
}
运行结果为:
程序有错,不能运行!或写:
sum=15
4、写出程序运行结果。
void main( )
{ int n,f;
n=1;
while(n<=10)
{ f=f*n;
n+=2;
}
printf(“f=%d\n”,&f);
}
运行结果为:
程序有错,不能运行!或写:
f=不确定
五、程序设计题(共2题,每题13分,共26分)
1、将一个数组按逆序存放,如元素1、2、3、4、5,按逆序存放后为5、4、3、2、1。
6. c语言考试系统填空题为什么答对了会是0分
可能你的程序输出格式错误
例如一些行末有无空格和回车的
这个比较很有可能是严格要求的
如果试题没有严格说明需要严格格式的话,建议寻找老师复议成绩
另外还有一种可能,你的程序返回值不是0.就是你的main函数退出之前没有return 0;
因为return 0的含义代表程序正常退出,如果你忘记写return 0或者某个地方导致程序结束,但那个地方程序前却没有return 0也会导致程序错误
因为return 别的一些返回值代表别的含义,例如有些返回值代表runtime error
7. 2020计算机二级c语言考试真题
如何获取计算机C语言考试资料呢?也就是往年的考试真题的资料。
2020C语言考点的话。可以去买未来教育的书考试真题的所有类型里面都有的,这个我不是很推荐买,看个人需求。2020年的C语言考试真题也在里面。或者官网上可查询题目。如果是视频的话,自己去搜索。如果是软件的话,我也推荐买个未来教育的,单买个软件也不贵,需要的话自己去搜,我只是推荐你们可以买,这个软件当时我也用过,是挺不错的。里面有各个知识点的题目,也有整套的题目,也有答案解析,也有模拟考试的,不过有的功能好像是要另外付费的,你们可以自己去了解一下。以下是其中的部分真题。
计算机二级C语言考公共基础知识部分10%,C语言部分90%。参照复习的话,我推荐你们最好去搜一下计算机二级C语言的网课,去看网课,如果说你们不想做笔记的话可以到购买C语言考试笔记的奥。如果你有心准备,二级C语言只需要一个月的时间就可以搞定!当然有基础的话肯定不需要这么多时间。如果你有基础的话,我推荐你先去看公共基础知识的网课用1.5倍速,甚至2倍速,重点是把里面的知识点理清,靠看网课完全背不下来的,大部分题都是从题库里面抽出来的,我们的目的并不是说只为了抽中你会的题目而去刷,而是这就是真题。最后,祝愿小伙伴们考试顺利。
8. C语言考试题
//word编辑,大小写可能有问题
一、填空题
1、一个C语言程序的语句至少应包含一个__函数____。
2、C语言源程序文件的扩展名是__ .C ____,经过编译、连接后,生成文件的扩展名是__编译后为.obj 连接后为.exe ____。
3、结构化程序由 顺序 、___选择___和___循环___三种基本结构组成。
4、C语言的执行是从__main()函数____开始执行的。
5、C源程序的语句分隔符是___;___。
6、在C语言中,用关键字__float____定义单精度实型变量。
7、表达式S=12应当读做“__把12赋值给变量S____”。
8、C语言源程序的基本单位是___函数___。
9、设int x=9,y=8;表达式x-=y+1的结果是___0___。
10、若a为整型变量,a=12,则表达式:a * =2+3的值___60___。
11、调用C语言对输入输出处理的库函数时,在# include命令行中应包含的头文件是__stdio.h___。
12、表达式9%5的结果是_4____。
13、若a为整型变量,a=12,则表达式:a+=4的值___16___。
14、在C语言中,要求运算数必须是整型的运算符是___%___。
15、在C语言中,用___非0___表示逻辑“真”值。
16、表达式10/3的结果是__3____。
17、通常一个字节包含___8___个二进制位。
18、 假设所有变量均为整型,a=2,b=5,b++则表达式a+b的值是___8___。
19、在C语言中,最基本的数据类型只有四种,它们分别是:___int___、___char___、___float___和double。
20、一个C程序有且仅有一个__main()____函数。
21、若a为整型变量,a=12,则表达式:a-=2的值__10____。
22、在C语言中,有三种逻辑运算符,它们分别是:___!___、___&&___、___||___。
23、在C语言中,字符输入函数和字符输出函数分别是:__getchar()____和___putchar()___。
24、C程序开发的四个步骤是___编辑___、___编译___、___链接___和执行。
25、C程序的结构分别是:顺序结构、__选择结构____、__循环结构____。
26、if语句中的表达式可以是关系表达式、__逻辑表达式____、___条件表达式___。
27、__?:____是C语言中惟一一个三元运算符。
28、C语言提供的预处理命令主要包括如下三种:宏定义、__文件包含____、___条件编译___。
二、阅读程序,写出下列程序运行结果。
1、2
2、K
3、a 97
4、无结果
三、编写程序
1、编写一个C程序,输入a、b、c 3个数,输出其中最大的数。
#include<stdio.h>
Void main()
{
Int a,b,c;
Printf("请输入三个数");
Scanf(%d%d%d,&a,&b,&c);
If(a<b)
A=b;
If(a<c)
A=c;
Printf("最大的数:%d",a);
}
求1—50的之和。
#include<stdio.h>
Void mian()
{
Int sum=0,i;
For(i=1;i<=50;i++)
Sum+=i;
Printf("1-50之和为:%d",sum);
}
从键盘输入一个大写字母,要求改用小写字母输出。
#include<stdio.h>
Void mian()
{
Char c;
Printf("请输入一个字母");
Scanf("%c".&c);
Printf("它的小写字母为%c",c+32);
}
利用while语句,计算1+1/2+1/4+…+1/100的值,并显示出来。
#include<stdio.h>
Void mian()
{
Float sum=0,temp;
Int i =1;
While(i<=100)
{
Temp=1/i;
Sum+=temp;
I++
}
Printf("结果为%d",sum);
}
输入两个整数,输出其中的大数。
#include<stdio.h>
Void mian()
{
Int a,b;
Printf("请输入两个数");
Scanf("%d%d".&a,&b);
Printf("大数是:%d"a>b?a:b);
}
6、利用while语句,计算1+1/3+1/5+…+1/99的值,并显示出来。
#include<stdio.h>
Void mian()
{
Int i =1;
Float sum=0,temp=0;
While(i<=99)
{
Temp =1/i;
Sum+=temp;
I=i+2;
}
Printf("结果为: %f",sum),
}
9. 万维全自动网络考试系统的题库 参数设置
题库:
万维全自动考试系统能够容纳大量的专业知识题库,题型丰富,几乎涵盖所有题型,满足各类高校的Windows 98/2000/XP操作系统、网络、Microsoft Office 97/2000/2002/2003、Adobe Photo Shop、Dreamweaver、Flash、各种类型的编程语言类或数据库类等科目的教学、考核与评估。
题库完全开放,任何一门科目都可以可以自由、安全和可靠的进行题库的管理,方便快捷的制作和编辑试题。
人性化的题库管理工具,题干模板,试题统计,题库资源结构,能够最大限度的减少教师工作量,使出题更有效准确。
详细的查询条件,可按难度,图片数,章节,包含文本等多条件查询,是教师管理题库更加轻松。
参数设置:
该模块主要用来控制客户端的表现方式,用户可以自由定义考试时间、监考密码、考试方式等,通过灵活的配置使考试系统可以与本地系统更好的融合, 考试系统的客户端表现也更加灵活。
可以根据实际需求设置考试场次,并为场次分配试卷,达到不同场次使用不同试卷进行考试的目的。
提供多种抽卷方式,如固定、随机、AB卷,采取随机、AB卷方式可以防止相邻座位的考生抽取相同试卷。同时随机抽卷提供均衡抽卷概率选项,确保抽取试卷的均衡性。
可以设置DOS中文环境,如UCDOS、天汇中文、虚拟DOS等,考试系统自带的虚拟DOS环境可以有效的避免在Windows XP 和Windows 2000下DOS中文环境发生的花屏现象。
选择判分过程中忽略考生没有答过的试题选项,考生交卷后,系统判分过程中对考生未通过点击“答题”按钮进行答题的试题直接忽略,不进行判分,这样可以明显提高判分速度,同时有效防止考生作弊。
10. 万维全自动考试系统怎么导出试题及答案
试题必须是数据库中的数据; 思想: 直接按照条件FSO生成一个 xls 文件, 生成完毕后显示下载地址,或者直接跳转到文件所在路径,下载 xls 文件; 导出文件如下: 方法二就是有固模板,生成其他格式文件