二级C语言上机考试模拟软件下载和安装
全国计算机等级考试二级c语言题库及答案
全国计算机等级考试二级c语言题库及答案1. 以下哪个选项不是C语言中的运算符?A. 赋值运算符B. 逗号运算符C. 条件运算符D. 逻辑运算符答案:C2. 在C语言中,以下哪个关键字用于定义一个函数?A. structB. unionC. voidD. int答案:D3. 若有以下代码片段:```cint a = 5, b = 10;a = a + b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 20答案:C4. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. do-while答案:B6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 若有以下代码片段:```cint x = 3;printf("%d", x++);```执行后,输出的结果是多少?A. 3B. 4C. 2D. 5答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A9. 下列哪个选项不是C语言中的数组类型?A. 一维数组B. 二维数组C. 三维数组D. 指针数组答案:D10. 在C语言中,以下哪个关键字用于声明一个指针变量?A. intB. charC. floatD. void答案:D结束语:以上是全国计算机等级考试二级C语言的部分题库及答案,希望对您的学习和复习有所帮助。
2020年全国计算机等级考试二级C语言上机模拟训练题库(共50套)
2020 年全国计算机等级考试二级 C 语言上机模拟训练题库(共50 套)第一套1 程序填空给定程序中,函数fun 的功能是:计算下式s=1/22+3/42+5/62+(2 ×n-1)/(2 ×n) 2 2 -3 并把计算结果作直到︱( 2×n-1 )/ (2×n)︱《 10为函数值返回。
例如,若形参 e 的值 le -3,函数值的返回值为 2.735678。
第 1 处 i=0;第 2 处 i++;第 3 处 x=(2.0*i-1) / ((2.0*i)* (2.0*i));2程序修改给定程序 MODI1.C中函数 fun 的功能是:将 s 所指字符串的正序和反序进行连接,形成一个新串放在 t 所指的数组中。
/**found**/void fun(char*s, char *t)/**found**/t[2*d]= 0’;3程序设计函数 fun 的功能是:将 s 所指字符串中除了下标为奇数、同时 ASCII 值也为奇数的字符之外,其余的所有字符都删除,串中剩余字符所形成的一个新串放在 t 所指的数组中。
viod fun(char*s, chat t[]){int i,j=0;for(i=1;i<strlen(s);i+=2)if(s[i]%2)t[j++]=s[i];t[j]=0;}第二套1程序填空给定程序中,函数 fun 的功能是:在 3× 4 的矩阵中找出在行上最大,列上最小的那个元素,若没有符合条件的元素则输出相应信息。
第 1 处 max=a[i][j];c=j;}第 2 处 find=0;第 3 处 i++;2 程序修改给定程序 MODI1.C中函数 fun 的功能是:根据整形形参 m 的值:计算如下公式的值 ?例如 : 若 m中的值为 5,则应输出: 0.536389 。
/**found**/for(i=2;i<=m;i++)/**found**/y-=1.0/(i*i);3 程序设计m个人的成绩存放在 score 数组中,请编写函数 fun ,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below 所指的数组中。
国家二级C语言机试(程序设计题)模拟试卷2(题后含答案及解析)
国家二级C语言机试(程序设计题)模拟试卷2(题后含答案及解析) 题型有:1.1.使用VC++2010打开考生文件夹下prog1中的解决方案。
此解决方案的项目中包含一个源程序文件prog1.c。
在此程序中,函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。
例如,若8所指字符串中的内容为“ABCDEFG12345”,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须删除;而字符1的ASCII码值为奇数,在数组中的下标为奇数,因此不应当删除,其他依此类推。
最后t所指的数组中的内容应是“BDF12345”。
注意:部分源程序在文件PROG1.C中。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:#include<stdio.h>#include<string.h>void fun(char*s,char t[]){}main( ){char s[100],t[100];void NONO( );printf(“\nPlease enter string S:”);Scanf(“%s”,s);fun(s,t);printf(“\nThe result is:%s\n”,t);NONO( );}void NONO( ){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。
*/chars[100],t[100];FTLE*rf,*wf;int i;rf=fopen(“in.dat”,”r”);wf=fopen(“out.dat”,”w”);for(i=0;i<10;i++){fscanf(rf,”%s”,s);fun(s,t);fprintf(wf,”%s\n”,t);}fclose(rf);fclose(wf);}正确答案:void fun(char*s,char t[]){int i,j=0;for(i=0;i<strlen(s);i++)if(!((i%2)==0&&(s[i]%2)))t[j++]=s[i];t[j]=0;}解析:本题是从一个字符串按要求生成另一个新的字符串。
NCRE全国计算机等级考试二级C语言上机---南开100题答案
填空题答案第1题答案第1处填空:n>1或1<n第2处填空:n-1第3处填空:1或1l或1L第2题答案第1处填空:n==0或0==n或!n第2处填空:n==1或1==n第3处填空:fun(n-1)+fun(n-2)或fun(n-2)+fun(n-1)第3题答案第1处填空:n--或--n或n-=1或n=n-1第2处填空:s[i]=s[n]或*(s+i)=*(s+n)第3处填空:s[n]=t或*(s+n)=t第4题答案第1处填空:i<=n或n>=i第2处填空:||第3处填空:1.0或(double)1第5题答案第1处填空:r*r第2处填空:&x第3处填空:x第6题答案第1处填空:<=第2处填空:n++或n+=1或n=n+1 第3处填空:return s或return (s) 第7题答案第1处填空:n%10第2处填空:break第3处填空:break第8题答案第1处填空:&num[i]或num+i第2处填空:max<num[i]?或num[i]>max?第3处填空:num[i]!=0或0!=num[i] 第9题答案第1处填空:(*a)++或++(*a)或*a=*a+1或*a+=1第2处填空:(*b)++或++(*b)或*b=*b+1或*b+=1第3处填空:upper,lower第10题答案第1处填空:max=a第2处填空:max=b第3处填空:max=c第11题答案第1处填空:1第2处填空:s[k]或*(s+k)第3处填空:c第12题答案第1处填空:tt[i]<='Z'或'Z'>=tt[i]第2处填空:32或'a'-'A'第3处填空:tt第13题答案第1处填空:char*fun(int n)第2处填空:2第3处填空:n%i==0或!(n%i)或0==n%i第14题答案第1处填空:*p或*p!='\0'或*p!=0第2处填空:i++或++i或i+=1或i=i+1第3处填空:'\0'或0第15题答案第1处填空:!=第2处填空:str[1]或*(str+1)第3处填空:s,c第16题答案第1处填空:n%100!=0或n%100或0!=n%100第2处填空:n%400==0或!(n%400)或0==n%400第3处填空:flag第17题答案第1处填空:n第2处填空:else第3处填空:a,b第18题答案第1处填空:*p==t或t==*p第2处填空:bb[n++]=i第3处填空:n第19题答案第1处填空:score[i]或*(score+i)第2处填空:below第3处填空:below[i]或*(below+i)第20题答案第1处填空:i第2处填空:j第3处填空:aa,&n第21题答案第1处填空:j++或++j或j+=1或j=j+1第2处填空:s[i]=t1[i]第3处填空:j第22题答案第1处填空:&&第2处填空:0第3处填空:s[j]或*(s+j)第23题答案第1处填空:int x[]或int*x第2处填空:sum+=x[i]或sum=sum+x[i]第3处填空:sum/n第24题答案第1处填空:a第2处填空:a第3处填空:b第25题答案第1处填空:n/2第2处填空:i第3处填空:a[n-i-1]第26题答案第1处填空:i=1第2处填空:&&第3处填空:--j或j-1第27题答案第1处填空:j=2第2处填空:i第3处填空:j第28题答案第1处填空:1第2处填空:s*i或i*s第3处填空:0第4处填空:s+fun(k)或fun(k)+s第29题答案第1处填空:0第2处填空:i<=x或x>=i第30题答案第1处填空:--i或i--或i-=1或i=i-1第2处填空:s[i]-'0'第3处填空:t*10+k或k+t*10或10*t+k或k+10*t第31题答案第1处填空:*(p1+i)或p1[i]或*(p1+i)!=0或p1[i]!=0第2处填空:*p2或p2[0]或*p2!=0或p2[0]!=0第3处填空:*p2++第32题答案第1处填空:sum+=x[i]或sum=sum+x[i]第2处填空:avg*1000或1000*avg第3处填空:(avg+5)/10或(5+avg)/10第33题答案第1处填空:1第2处填空:i第3处填空:a[p+i]或*(a+p+i)第34题答案第1处填空:bb[i]=0或*(bb+i)=0第2处填空:bb[5]++或++bb[5]或bb[5]=bb[5]+1或bb[5]+=1第3处填空:p++;或++p;或p+=1;或p=p+1;第35题答案第1处填空:i<*num或*num>i第2处填空:n++或++n或n+=1或n=n+1第3处填空:*num=n第36题答案第1处填空:&&第2处填空:s[i]-'0'第3处填空:n第37题答案第1处填空:xx[i]%10第2处填空:bb[n++]=xx[i]第3处填空:n第38题答案第1处填空:n/100%10第2处填空:"yes!"第3处填空:"no!"第39题答案第1处填空:"%d",&n第2处填空:str2[i]=str1[i];第3处填空:str2第40题答案第1处填空:"%s",str1第2处填空:%c第3处填空:str2第41题答案第1处填空:"%ld",&n第2处填空:n=-n;或n*=-1;第3处填空:"%ld",n第42题答案第1处填空:*p或p[0]第2处填空:default:b[10]++;第3处填空:p++;或p+=1;或p=p+1;或++p;第43题答案第1处填空:*p或*p!=0或0!=*p 第2处填空:bb[*p-'0']++或bb[*p-'0']+=1第3处填空:num[j]=bb[i]第44题答案第1处填空:0第2处填空:||第45题答案第1处填空:s1-i-1或s1-1-i第2处填空:2*s1或s1*2第46题答案第1处填空:*k第2处填空:s[i]>max或max<s[i] 第3处填空:i第47题答案第1处填空:xx[i]%10第2处填空:bb[n++]=xx[i]第3处填空:n第48题答案第1处填空:n>0或0<n 第2处填空:n%10+'0'或'0'+n%10第3处填空:str[i]='\0'或str[i]=0第49题答案第1处填空:disc<0或0>disc第2处填空:sqrt第3处填空:sqrt第50题答案第1处填空:s第2处填空:*p++第3处填空:*(p)或*p或*p!=0第51题答案第1处填空:x>y或y<x第2处填空:x>z或z<x第3处填空:y>z或z<y第52题答案第1处填空:"out52.dat","w"第2处填空:fputc(ch,fp)第3处填空:fclose(fp)第53题答案第1处填空:i第2处填空:p->next=s第3处填空:p->next第54题答案第1处填空:*p1<*p2或*p2>*p1第2处填空:*p1>*p2或*p2<*p1第3处填空:'\0'或0第55题答案第1处填空:flag=1第2处填空:j%i==0或0==j%i或!(j%i)第3处填空:flag==1或1==flag第56题答案第1处填空:&&第2处填空:fputc(ch,fp1)第3处填空:fclose(fp)第57题答案第1处填空:double第2处填空:j第3处填空:1.0/t或(double)1/t第58题答案第1处填空:&n第2处填空:i=1第3处填空:f*=i或f=f*i或f=i*f第59题答案第1处填空:sum=0第2处填空:sum+=n或sum=sum+n或sum=n+sum第3处填空:ld第60题答案第1处填空:i<n或n>i第2处填空:j<n-1或n-1>j第61题答案第1处填空:bb[i]=0或*(bb+i)=0第2处填空:bb[i]+=score[i][j]或bb[i]=bb[i]+score[i][j]或bb[i]=score[i][j]+bb[i]第62题答案第1处填空:"%c",&str[i]或"%c",str+i第2处填空:str[i]!='*'或*(str+i)!='*'第3处填空:"%c",str[j]或"%c",*(str+j)第63题答案第1处填空:STU第2处填空:h第3处填空:h第64题答案第1处填空:str1[i]!=''或''!=str1[i]第2处填空:i++或++i或i+=1或i=i+1第65题答案第1处填空:bb[i][j]=1第2处填空:bb[i][j]=0第66题答案第1处填空:j>i或i<j第2处填空:bb[j]=bb[j-1]第3处填空:break第67题答案第1处填空:p=str第2处填空:p[i]++或++p[i]或p[i]+=1或p[i]=p[i]+1第3处填空:s[i]='\0'或s[i]=0第68题答案第1处填空:break第2处填空:'\0'或0第3处填空:*p++第69题答案第1处填空:<第2处填空:*p2或p2[0]第3处填空:str1第70题答案第1处填空:*(pstr+j)或pstr[j]第2处填空:pstr[j]或*(pstr+j)第3处填空:p第71题答案第1处填空:std[3]或std[]或*std第2处填空:PERSON第3处填空:std第72题答案第1处填空:N第2处填空:M第3处填空:bb[i]/N或*(bb+i)/N第73题答案第1处填空:bb[i][j]=0第2处填空:1第3处填空:j==n-1-i或j==n-i-1第74题答案第1处填空:*std或std[0]第2处填空:std[i].age第3处填空:第75题答案第1处填空:&n第2处填空:t*i或i*t第3处填空:s+t或t+s第76题答案第1处填空:i第2处填空:s[j]=s[i]第77题答案第1处填空:N-1第2处填空:bb[n++]=aa[i]第3处填空:i,bb[i]第78题答案第1处填空:fun(char s[],int n)或fun(char*s,int n)第2处填空:j=0第3处填空:s[j]='\0'或s[j]=0第79题答案第1处填空:aa[i]%2==0或0==aa[i]%2或aa[i]%2第2处填空:i<k或k>i第80题答案第1处填空:--i或i--或i-=1或i=i-1 第2处填空:bb[j]=bb[i]第81题答案第1处填空:sum=0第2处填空:t[i][i]第3处填空:1第82题答案第1处填空:i%10第2处填空:g*g*g==i或i==g*g*g 第83题答案第1处填空:break;第2处填空:i++或++i或i+=1或i=i+1第3处填空:'\0'或0第84题答案第1处填空:&&第2处填空:i,j第85题答案第1处填空:[N]第2处填空:t[i][j]第3处填空:t[j][i]第86题答案第1处填空:N第2处填空:N-1第3处填空:0第87题答案第1处填空:&&第2处填空:g+ 第88题答案第1处填空:s[i]或s[i]!=0或0!=s[i]第2处填空:s[i]==ch或ch==s[i]第3处填空:return n第89题答案第1处填空:s[i]!='\0'或s[i]或s[i]!=0第2处填空:32或'a'-'A'第3处填空:i++或++i或i+=1或i=i+1第90题答案第1处填空:STU第2处填空:std[i].num第3处填空:std[i]第91题答案第1处填空:i=1,j=0或j=0,i=1第2处填空:bb[j++]=i第3处填空:return j第92题答案第1处填空:str[i+1]或str[i+1]!='\0'或str[i+1]!=0第2处填空:str[i]=ch第93题答案第1处填空:aa[max]<aa[i]或aa[i]>aa[max]第2处填空:aa[min]>aa[i]或aa[i]<aa[min]第3处填空:aa[max]=aa[min]第94题答案第1处填空:i++或++i或i+=1或i=i+1第2处填空:s[j++]=s[i]第3处填空:s[j]='\0'或s[j]=0第95题答案第1处填空:0.0或0或(double)0第2处填空:n第3处填空:s第96题答案第1处填空:aa[k++]=t或aa[k]=t,k++或aa[k]=t;k++第2处填空:i<j或j>i第97题答案第1处填空:break第2处填空:t[i]第3处填空:u[ul]第98题答案第1处填空:s[i]!='\0'或s[i]或s[i]!=0第2处填空:25第3处填空:1第99题答案第1处填空:j%i==0或!(j%i)或0==j%i第2处填空:flag==1或flag或1==flag第3处填空:aver/n第100题答案第1处填空:k=0第2处填空:||第3处填空:s[k]='\0'或s[k]=0改错题答案第1题答案第1处:IsPrime(int n);应改为IsPrime(int n)第2处:if!(n%i)应改为if(!(n%i))第2题答案第1处:int k=1;应改为int k=0;第2处:while(*p!=*q)应改为while(*p||*q)第3题答案第1处:s[j]=s[i];应改为s[j++]=s[i];第2处:s[j]="\0";应改为s[j]='\0';第4题答案第1处:void fun(char*s,int a,int b)应改为void fun(char*s,int*a,int*b)第2处:a++;应改为(*a)++;第3处:b++;应改为(*b)++;第5题答案第1处:a[i+1]=a[i];应改为a[i]=a[i+1];第6题答案第1处:for(i=2;i<m;i++)应改为for(i=2;i<=m;i++)第2处:y-=1/(i*i);应改为y-=1.0/(i*i);第7题答案第1处:p=j应改为p=j;第2处:p=i;应改为p=j;第8题答案第1处:void fun(char*p);应改为void fun(char*p)第2处:p=q+i;应改为q=p+i;第9题答案第1处:t=s[k];应改为t+=s[k];第2处:*aver=&ave;应改为*aver=ave;第10题答案第1处:void fun(char*s,*t1,*t2,*w)应改为voidfun(char*s,char*t1,char*t2,char*w)第2处:while(r)应改为while(*r)第11题答案第1处:n=*p-'o';应改为n=*p-'0';第2处:n=n*7+*p-'o';应改为n=n*8+*p-'0';第12题答案第1处:a=NuLL;应改为a=NULL;3/13第2处:if(r==p)应改为if(*r==*p) 第13题答案第1处:t+=1.0/k;应改为t+=1.0/i; 第2处:应填return t;第14题答案第1处:int r;应改为double r;第2处:while(fabs(n-m)<0.001)应改为while(fabs(n-m)>0.001)第15题答案第1处:void fun(char str,char ch)应改为void fun(char*str,char ch)第2处:if(*str==ch)应改为if(*str=='\0')第3处:str[1]='0';应改为str[1]='\0';或str[1]=0;第16题答案第1处:p->next=NULL;应改为p=s; 第2处:s->data=rand()%m;应改为s->data=rand()%(m-1);第3处:return p;应改为return h; 第17题答案第1处:if((k%13=0)||(k%17=0))应改为if((k%13==0)||(k%17==0))第2处:应填}第18题答案第1处:void fun(int a,int b)应改为void fun(int*a,int*b)第2处:t=b;b=a;a=t;应改为t=*b;*b=*a;*a=t;第19题答案第1处:void fun(long s,long t)应改为void fun(long s,long*t)第2处:while(s<0)应改为while(s>0) 第20题答案第1处:void fun(int a[],int m)应改为int fun(int a[],int m)第2处:if(m>=a[mid])应改为if(m>a[mid])第21题答案第1处:p=h;应改为p=h->next;第2处:p=h->next;应改为p=p->next;第22题答案第1处:for(i=2;i<m;i++)应改为for(i=2;i<=m;i++)第2处:y+=1/(i*i);应改为y+=1.0/(i*i);第23题答案第1处:int fun(n)应改为int fun(int n)第2处:if(n=1)应改为if(n==1)第24题答案第1处:if(r==p)应改为if(*r==*p) 第2处:if(r=='\0')应改为if(*r=='\0') 第25题答案第1处:if n==0应改为if(n==0)第2处:result=n--;应改为result*=n--;第26题答案第1处:应填sum=0;第2处:scanf("%d,",a[i][j]);应改为scanf("%d,",&a[i][j]);第27题答案第1处:t=0;应改为t=1.0;第2处:while(t<=eps)应改为while(t>=eps)第28题答案第1处:s=p;应改为p=s;第2处:应填p++;或++p;或p+=1;或p=p+1第3处:a[i]='0';应改为a[i]='\0';或a[i]=0;第29题答案第1处:b=a;应改为a=b;第2处:return(a);应改为return(b);第30题答案第1处:long k;应改为long k=1;第2处:num\=10;应改为num/=10;第31题答案第1处:if((tt[i]>='a')||(tt[i]<='z'))应改为if((tt[i]>='a')&&(tt[i]<='z'))第2处:tt[i]+=32;应改为tt[i]-=32;第32题答案第1处:if(i+1%5==0)应改为if((i+1)%5==0)第33题答案第1处:while(*s!='@')应改为while(*s)或while(*s!='\0')或while(*s!=0)第2处:(*s)++;应改为s++;第34题答案第1处:t=0;应改为*t=0;第2处:if(d%2==0)应改为if(d%2!=0)第35题答案第1处:if(p=='')应改为if(*p=='')第2处:*p=toupper(*(p-1));应改为*(p-1)=toupper(*(p-1));第36题答案第1处:j=1;应改为j=0;第2处:while(t!=0&&m!=0&&n!=0)应改为while(t!=0||m!=0||n!=0)第37题答案第1处:*r=t;应改为r=t;或r=&t[0];第2处:应填r=t;或r=&t[0];第38题答案第1处:t=x;x=y;应改为t=*x;*x=y;第2处:return(y);应改为return(t);或return t;第39题答案第1处:void fun(char s,char t)应改为void fun(char*s,char*t)第2处:t[2*d-1]='\0';应改为t[2*d]='\0';或t[d+i]='\0';或t[2*d]=0;或t[d+i]=0;第40题答案第1处:for(i=j+1;i<n-1;i++)应改为for(i=j+1;i<n;i++)第2处:t=i;应改为p=i;第41题答案第1处:while(p->next)应改为while(p!=NULL)第2处:p=h->next;应改为p=p->next;第42题答案第1处:if(i%2&&s[i]%2==0)应改为if(i%2||s[i]%2==0)或if(i%2!=0||s[i]%2==0)第2处:t[i]='\0';应改为t[j]='\0';或t[j]=0;第43题答案第1处:k=n;应改为k=i;第2处:b=k/10;应改为b=k%10;第44题答案第1处:fun(int**a,int m)应改为voidfun(int(*a)[M],int m)第2处:a[j][k]=k*j;应改为a[j][k]=(k+1)*(j+1);第45题答案第1处:void fun(char*s,t1,t2,w)应改为voidfun(char*s,char*t1,char*t2,char*w)第2处:while(w)应改为while(*w)第46题答案第1处:fun(int n)应改为doublefun(int n)第2处:return sum应改为returnsum;第47题答案第1处:void fun(int*a,int n);应改为void fun(int*a,int n)第2处:m=0;应改为m=i;第48题答案第1处:fun(char(*sq)[N])应改为char*fun(char(*sq)[M])第2处:return sq;应改为return sp;第49题答案第1处:*t=malloc(sizeof(STU));应改为t=(STU*)malloc(sizeof(STU)*m);第2处:t[k].num=b[j].num;应改为strcpy(t[k].num,b[j].num);第50题答案第1处:t[i]=s[s1-i];应改为t[i]=s[s1-i-1];或t[i]=s[s1-1-i];第51题答案第1处:void fun(char str[][],int m,char*pt)应改为void fun(char str[][10],int m,char*pt)第2处:pt[i]=str[k,i];应改为pt[i]=str[k][i];第52题答案第1处:int fun(double x[],int n)应改为int fun(double x[],int n){第53题答案第1处:switch(g);应改为switch(g) 第2处:case 1;应改为case 1:第54题答案第1处:double fun(char*s,char*t)应改为char*fun(char*s,char*t)第2处:(*ss)++;应改为ss++;第3处:(*tt)++;应改为tt++;第55题答案第1处:y=0;应改为y=1;第2处:d=i-a;应改为d=a-i;第56题答案第1处:void fun(char(*pstr)[6])应改为void fun(char*pstr[6])第2处:if(strcmp(*(pstr+i),pstr+j)>0)应改为if(strcmp(*(pstr+i),*(pstr+j))>0)第3处:*(pstr+i)=pstr+j;应改为*(pstr+i)=*(pstr+j);第57题答案第1处:while(i>j)应改为while(i<j)或while(j>i)第2处:c=0;应改为*c='\0';或*c=0; 第58题答案第1处:for(i=0;i<=s1;i++)应改为for(i=0;i<s1;i++)第2处:t[s1]='\0';应改为t[2*s1]='\0'; 第59题答案第1处:void fun(char*s,int num[5]);应改为void fun(char*s,int num[5]) 第2处:num[i]=0;应改为num[k]=0; 第3处:switch(s)应改为switch(*s) 第60题答案第1处:if(i%k!=0)应改为if(i%k==0)第2处:if(k<i)应改为if(k>=i)第61题答案第1处:fun(int m)应改为double fun(int m)第2处:for(i=100,i<=m,i+=100)应改为for(i=100;i<=m;i+=100)第62题答案第1处:break应改为break;第63题答案第1处:i=1;应改为i=0;第2处:while(i<3||*p)应改为while(i<3&&*p)第3处:b[k]='';应改为b[k++]='';第64题答案第1处:c=c-32;应改为c=c+32;第2处:c=c-5;应改为c=c+5;第65题答案第1处:void fun(long s,long t)应改为void fun(long s,long*t)第2处:s1=s1*100;应改为s1=s1*10;第66题答案第1处:fun(int n)应改为doublefun(int n)第2处:b+=c;应改为b=c;第67题答案第1处:fun(double a,double x0)应改为double fun(double a,double x0)第2处:if(abs(x1-x0)>=1e-6)应改为if(fabs(x1-x0)>=1e-6)第68题答案第1处:return 1;应改为return 3;第2处:return 3;应改为return 1;第69题答案第1处:void upfst(char p)应改为void upfst(char*p)第70题答案第1处:int fun(int*b);应改为intfun(int*b)第2处:for(k=10;k<=55;k++)应改为for(k=1;k<55;k++)第3处:return k;应改为return i;第71题答案第1处:if k>1应改为if(k>1)第72题答案第1处:int fun(char*str,*substr)应改为int fun(char*str,char*substr)第2处:for(i=0,str[i],i++)应改为for(i=0;str[i];i++)第73题答案第1处:t=1.0-1/i;应改为t-=1.0/i;或t=t-1.0/i;或t-=(double)1/i;第2处:应填return t;第74题答案第1处:c=aa[i];应改为ch=aa[i];第75题答案第1处:int fun(int m,int xx[][])应改为int fun(int m,int xx[][M])第2处:printf("%4f",xx[i][j]);应改为printf("%4d",xx[i][j]);第76题答案第1处:long s1=0;应改为long s1=1;第2处:s\=10;应改为s/=10;第77题答案第1处:void fun(char a)应改为voidfun(char*a)第78题答案第1处:k++应改为k++;第2处:if(m=k)应改为if(m==k)第79题答案第1处:c[t]="\0";应改为c[t]='\0';第80题答案第1处:fun(int n)应改为doublefun(int n)第2处:s=s+(Double)a/b;应改为s=s+(double)a/b;第81题答案第1处:fun(int n)应改为doublefun(int n)第2处:for(i=2;i<n;i++)应改为for(i=2;i<=n;i++)第82题答案第1处:result*=--n;应改为result*=n--;第2处:应填return result;第83题答案第1处:void fun(int x,int y)应改为void fun(int*x,int*y)第2处:t=x;x=y;y=t;应改为t=*x;*x=*y;*y=t;第84题答案第1处:void fun(int m,int k);应改为void fun(int m,int k)第2处:aa[i]=m/k;应改为aa[i]=m%k;第3处:printf("%d",aa[i]);应改为printf("%d",aa[i-1]);第85题答案第1处:s[j]=s[i];应改为s[j++]=s[i];第2处:s[i]='\0';应改为s[j]='\0';第86题答案第1处:float*k;应改为float k;第2处:if(*s<*p)应改为if(*s>*p)第87题答案第1处:void fun(int a)应改为voidfun(int a[M])或void fun(int a[])或void fun(int*a)第2处:a[j]=a[j+1];应改为a[j]=a[j-1];第88题答案第1处:for(i=0;i<=3;i++)应改为for(i=1;i<=3;i++)第2处:if(k>=1&&k<=6)应改为if(k>=0&&k<=6)5/13第89题答案第1处:for(i=1;i<y;i++)应改为for(i=1;i<=y;i++)第2处:t=t/1000;应改为t=t%1000; 第90题答案第1处:d=0;应改为d=1;第2处:s=1;应改为s=0;第3处:s=s/10;应改为d=d/10;第91题答案第1处:for(i=strlen(t);i;i--)应改为for(i=strlen(t)-1;i;i--)或for(i=strlen(t)-1;i>0;i--)第2处:if(t[j]<t[j+1])应改为if(t[j]>t[j+1])第92题答案第1处:long s=0,t=1;应改为long s=0,t=0;第2处:for(j=0;j<=n;j++)应改为for(j=0;j<n;j++)第3处:t=t%10;应改为t=t/10;第93题答案第1处:while(t>=num)应改为while(fabs(t)>=num)第2处:t=s%n;应改为t=s/n;第94题答案第1处:int sum=0.0;应改为double sum=0.0;第2处:sum\=c;应改为sum/=c;第95题答案第1处:s=s+(n+1)/n;应改为s=s+(double)(n+1)/n;第2处:return s;应改为return t;第96题答案第1处:fun(int k)应改为double fun(int k)第2处:return s应改为return s;第97题答案第1处:f(double x)应改为double f(double x)第2处:return s应改为return s;第98题答案第1处:#define FU(m,n)(m/n)应改为#define FU(m,n)(m)/(n)第2处:Return(value);应改为return(value);第99题答案第1处:int i,j,k,sum;应改为int i,j=0,k,sum;第2处:if(sum%4=2)应改为if(sum%4==2)第100题答案第1处:if(t=0)应改为if(t==0)第2处:zero=count;应改为*zero=count; 编程题答案第1题答案int fun(int score[],int m,int below[]){int i,k=0,aver=0;for(i=0;i<m;i++)aver+=score[i];aver/=m;for(i=0;i<m;i++)if(score[i]<aver){below[k]=score[i];k++;}return k;}第2题答案void fun(int*a,int*n){int i,j=0;for(i=2;i<1000;i++)if((i%7==0||i%11==0)&&i%77!=0)a[j++]=i;*n=j;}第3题答案void fun(int x,int pp[],int*n){int i=1,j=0,k=0,*t=pp;for(i=0;i<=x;i++)if(i%2!=0){t[j]=i;j++;}for(i=0;i<j;i++)if(x%t[i]==0){pp[k]=t[i];k++;}*n=k;}第4题答案void fun(char*tt,int pp[]){int i;for(i=0;i<26;i++)pp[i]=0;while(*tt){switch(*tt){case'a':pp[0]++;break;case'b':pp[1]++;break;case'c':pp[2]++;break;case'd':pp[3]++;break;case'e':pp[4]++;break;case'f':pp[5]++;break;case'g':pp[6]++;break;case'h':pp[7]++;break;case'i':pp[8]++;break;case'j':pp[9]++;break;case'k':pp[10]++;break;case'l':pp[11]++;break;case'm':pp[12]++;break;case'n':pp[13]++;break;case'o':pp[14]++;break;case'p':pp[15]++;break;case'q':pp[16]++;break;case'r':pp[17]++;break;case's':pp[18]++;break;case't':pp[19]++;break;case'u':pp[20]++;break;case'v':pp[21]++;break;case'w':pp[22]++;break;case'x':pp[23]++;break;case'y':pp[24]++;break;case'z':pp[25]++;break;}tt++;}}第5题答案void fun(int m,int k,int xx[]){int g=0,i,j,flag=1;for(i=m+1;i<m*m;i++){for(j=2;j<i;j++){if(i%j!=0)flag=1;else{flag=0;break;}}if(flag==1&&j>=i){if(k>=0){xx[g++]=i;k--;}elsebreak;}}}第6题答案void fun(char a[],char b[],int n){int i,j=0;for(i=0;i<LEN;i++)if(i!=n){b[j]=a[i];j++;}b[j]='\0';}第7题答案void fun(int*s,int t,int*k){int i,max;max=s[0];for (i=0;i<t;i++)if (s[i]>max){max=s[i];*k=i;}}第8题答案float fun(int n){int i;float s=1.0,t=1.0;for(i=2;i<=n;i++){t=t+i;s=s+1/t;}return s;}第9题答案float fun(int m,int n){float p,t=1.0;int i;for(i=1; i<=m; i++)t=t*i;p=t;for(t=1.0,i=1; i<=n; i++)t=t*i;p=p/t;for(t=1.0,i=1; i<=m-n; i++)t=t*i;p=p/t;return p;}第10题答案float fun(){float x1=0.0,x0;do{x0=x1;x1=cos(x0);}while(fabs(x0-x1)>=1e-6);return x1;}第11题答案int fun(int a[][N]){int i,j;for(i=0; i<N; i++)for(j=0; j<=i; j++)a[i][j]=0;}第12题答案double fun(int w[][N]){int i,j,k=0;double s=0.0;for(j=0; j<N; j++){s+=w[0][j];k++;}for(j=0; j<N; j++){s+=w[N-1][j];k++;}for(i=1; i<=N-2; i++){s+=w[i][0];k++;}for(i=1; i<=N-2; i++){s+=w[i][N-1];k++;}return s/=k;}第13题答案void fun(int tt[M][N],int pp[N]){int i,j,min;for(j=0; j<N; j++){min=tt[0][j];for(i=0; i<M; i++){if(tt[i][j]<min)min=tt[i][j];}pp[j]=min;}}第14题答案int fun(int a[M][N]){int i,j,s=0;for(j=0; j<N; j++){s+=a[0][j];s+=a[M-1][j];}for(i=1; i<=M-2; i++){s+=a[i][0];s+=a[i][N-1];}return s;}第15题答案unsigned fun(unsigned w){unsigned t,s=0,s1=1,p=0;t=w;while(t>10){if(t/10)p=t%10;s=s+p*s1;s1=s1*10;t=t/10;}return s;}第16题答案float fun(float h){long t;float s;h=h*1000;t=(h+5)/10;s=(float)t/100.0;return s;}第17题答案void fun(char*s){char ch;int i,m,n;i=0;m=n=strlen(s)-1;while(i<(n+1)/2){ch=s[i];s[i]=s[m];s[m]=ch;i++;m--;}}第18题答案void fun(int array[3][3]){int i,j,temp;for(i=0; i<3; i++)for(j=0; j<i;j++){temp=array[i][j];array[i][j]=array[j][i];array[j][i]=temp;}}第19题答案void fun(char s[],int c){int i=0;char*p;p=s;while(*p){if(*p!=c){s[i]=*p;i++;}p++;}s[i]='\0';}第20题答案int fun(int lim,int aa[MAX]){int k=0,i,j;for(i=lim; i>1; i--){for(j=2; j<i; j++)if(i%j==0)break;elsecontinue;if(j>=i){aa[k]=i;k++;}}return k++;}第21题答案void fun(char*s,int num){char t;int i,j;for(i=1; i<num-2; i++)for(j=i+1; j<num-1; j++)if(s[i]<s[j]){t=s[i];s[i]=s[j];s[j]=t;}7/13}第22题答案double fun(STREC*h){double max;STREC*q=h;max=h->s;do{if(q->s>max)max=q->s;q=q->next;}while(q!=0);return max;}第23题答案int fun(char*str){int i,n=0,fg=1;char*p=str;while(*p){n++;p++;}for(i=0; i<n/2; i++)if(str[i]==str[n-1-i]);else{fg=0;break;}return fg;}第24题答案long fun(char*p){long s=0,t;int i=0,j,n=strlen(p),k,s1;if(p[0]=='-')i++;for(j=i; j<=n-1; j++){t=p[j]-'0';s1=10;for(k=j; k<n-1; k++)t*=s1;s+=t;}if(p[0]=='-')return-s;elsereturn s;}第25题答案char*fun(char*s,char*t) {char*p,*t1=t,*s1=s;int n=0,m=0;while(*s1){n++;s1++;}while(*t1){m++;t1++;}if(n>=m)p=s;elsep=t;return p;}第26题答案double fun(double eps){double s;float n,t,pi;t=1; pi=0; n=1.0; s=1.0;while((fabs(s))>=eps){pi+=s;t=n/(2*n+1);s*=t;n++;}pi=pi*2;return pi;}第27题答案void fun(int m,int*a,int*n){int i,j=0; *n=0;for(i=1; i<=m; i++)if(i%7==0||i%11==0){a[j]=i;j++;}*n=j;}第28题答案void fun(int a[],int n,int*max,int*d){int i;*max=a[0];*d=0;for(i=0; i<n; i++)if(a[i]>*max){*max=a[i];*d=i;}}第29题答案void fun(char*ss){int i,n;n=strlen(ss);for(i=1; i<n; i+=2)if(ss[i]>='a'&&ss[i]<='z')ss[i]=ss[i]-32;}第30题答案int fun(int a[][M]){int i,j,max;max=a[0][0];for(i=0; i<2; i++)for(j=0; j<M; j++)if(a[i][j]>max)max=a[i][j];return max;}第31题答案void fun(char*s,char t[]){int i,j=0,n;n=strlen(s);for(i=0; i<n; i++)if(i%2==0&&s[i]%2==0){t[j]=s[i];j++;}t[j]='\0';}第32题答案void fun(char*s,char t[]){int i,j=0,n;n=strlen(s);for(i=0; i<n; i++)if(i%2!=0&&s[i]%2!=0){t[j]=s[i];j++;}t[j]='\0';}第33题答案void fun(char*a,int n){int i=0,k=0;char*p,*t;p=t=a;while(*t)t++;t--;while(*t=='*'){k++;t--;}t++;if(k>n){while(*p&&p<t+n){a[i]=*p;i++;p++;}a[i]='\0';}}第34题答案int fun(STREC*a,STREC*b){int i,j=0,n=0,max;max=a[0].s;for(i=0; i<N; i++)if(a[i].s>max)max=a[i].s;for(i=0; i<N;i++)if(a[i].s==max){*(b+j)=a[i];j++;n++;}return n;}第35题答案void fun(char*str){int i=0;char*p=str;while(*p){if(*p!=''){str[i]=*p;i++;}p++;}str[i]='\0';}第36题答案void fun(char*a){int i=0,n=0;char*p;p=a;while(*p=='*'){n++;p++;}while(*p){a[i]=*p;i++;p++;}while(n!=0){a[i]='*';i++;n--;}a[i]='\0';}第37题答案void fun(STREC*p) {double av=0.0;int i;for(i=0; i<N; i++)av+=p->s[i];av/=N;p->ave=av;}第38题答案int fun(char*ss,char c) {int n=0;while(*ss){if(*ss==c)n++;ss++;}return n;}第39题答案void fun(int*w,int p,int n) {int b[N],i,j=0;for(i=0; i<=p; i++)b[i]=w[i];for(i=p+1; i<n; i++){w[j]=w[i];j++;}for(i=0; i<=p; i++){w[j]=b[i];j++;}}第40题答案void fun(char*w,int m){char b[N];int i,j=0;for(i=0; i<m; i++){b[j]=w[i];j++;}for(i=0; i<strlen(w)-m; i++)w[i]=w[i+m];for(j=0; j<m; j++){w[i]=b[j];i++;}w[i]='\0';}第41题答案void fun(char(*s)[N],char*b){int i,j,k=0;for(j=0; j<N; j++)for(i=0; i<M; i++){b[k]=*(*(s+i)+j);k++;}b[k]='\0';}第42题答案void fun(int a[][N],int m){int i,j;for(j=0; j<N; j++)for(i=0; i<=j; i++)a[i][j]=a[i][j]*m;}第43题答案char*fun(char(*a)[81],int num){int i;char*max;max=a[0];for(i=0; i<num; i++)if(strlen(max)<strlen(a[i]))max=a[i];return max;}第44题答案int fun(char*str,char*substr){int n;char*p,*r;n=0;while(*str){p=str;r=substr;while(*r)if(*r==*p){r++;p++;}elsebreak;if(*r=='\0')n++;str++;}return n;}第45题答案void fun(char*a,int n,int h,int e){int i=0;char*p;for(p=a+h; p<a+n-e; p++){*(a+i)=*p;i++;}*(a+i)='\0';}第46题答案void fun(STREC a[]){int i,j;STREC t;for(i=0; i<N-1; i++)for(j=i; j<N; j++)if(a[i].s<a[j].s){t=a[i];a[i]=a[j];a[j]=t;}}第47题答案void fun(char*ss){int i,n=0;char*p=ss;while(*p){n++;p++;}for(i=0; i<n; i++)if((ss[i]>='a'&&ss[i]<='z')&&i%2!=0)ss[i]=ss[i]-32;ss[i]='\0';}第48题答案void fun(int a,int b,long*c){*c=(a/10)*1000+(b/10)*100+(a%10)*10+b%10;}第49题答案void fun(char*s,char t[]){int i,j=0,n=strlen(s);for(i=0; i<n; i++)if(i%2==0&&s[i]%2!=0);9/13else{t[j]=s[i];j++;}t[j]='\0';}第50题答案void fun(STU a[],STU*s){int i,max;max=a[0].s;for(i=0; i<N; i++)if(a[i].s>max){max=a[i].s;*s=a[i];}}第51题答案void fun(int m,int*k,int xx[]){int i,j;int t=0;for(i=2; i<m; i++){j=2;while(j<i){if(i%j==0){xx[t]=i;t++;break;}j++;}*k=t;}}第52题答案void fun(char p1[],char p2[]){int i=0,n=0;char*p=p1,*q=p2;while(*p){p++;n++;}i=n;while(*q){p1[i]=*q;q++;i++;}p1[i]='\0';}第53题答案void fun(int a[3][3],int b[3][3]){int i,j,at[3][3];for(i=0; i<=2; i++)for(j=0; j<=2; j++)at[i][j]=a[j][i];for(i=0; i<3; i++)for(j=0; j<3; j++)b[i][j]=a[i][j]+at[i][j]; }第54题答案double fun(STREC*a,STREC*b,int*n){double aver=0.0;int i,j=0;*n=0;for(i=0; i<N; i++)aver+=a[i].s;aver/=N;for(i=0; i<N; i++)if(a[i].s<aver){b[j]=a[i];(*n)++;j++;}return aver;}第55题答案void fun(int(*s)[10],int*b,int*n,int mm,intnn){int i,j;for(i=0; i<mm; i++)for(j=0; j<nn; j++){b[*n]=*(*(s+i)+j);*n=*n+1;}}第56题答案void fun(char*a,char*p){int i=0;char*q=a;while(q<=p){if(*q!='*'){a[i]=*q;i++;}q++;}while(*q){a[i]=*q;i++;q++;}a[i]='\0';}第57题答案int fun(STREC*a,STREC*b,int l,int h){int i,j=0;for(i=0; i<N; i++)if(a[i].s>=l&&a[i].s<=h){b[j]=a[i];j++;}return j;}第58题答案double fun(int n){double s=0.0;int i;for(i=1; i<n; i++)if(i%3==0&&i%7==0)s=s+i;s=sqrt(s);return s;}第59题答案void fun(char a[M][N],char*b){int i,j,k=0;for(i=0; i<M; i++){for(j=0; j<N; j++)if(*(*(a+i)+j)){b[k]=*(*(a+i)+j);k++;}elsebreak;b[k]='\0';}}第60题答案int fun(int a[],int n){int i,t,j=0,*p=a;t=p[0];for(i=0; i<=n; i++)if(t==p[i]);else{a[j]=t;t=p[i];j++;}if(i>=n)a[j]=t;return j;}第61题答案void fun(int*a,int*b){int i,j;for(j=0; j<M; j++)b[j]=0;for(i=0; i<N; i++)if(a[i]>=0&&a[i]<=9)b[0]+=1;else if(a[i]>=10&&a[i]<=19)b[1]+=1;else if(a[i]>=20&&a[i]<=29)b[2]+=1;else if(a[i]>=30&&a[i]<=39)b[3]+=1;else if(a[i]>=40&&a[i]<=49)b[4]+=1;else if(a[i]>=50&&a[i]<=59)b[5]+=1;else if(a[i]>=60&&a[i]<=69)b[6]+=1;else if(a[i]>=70&&a[i]<=79)b[7]+=1;else if(a[i]>=80&&a[i]<=89)b[8]+=1;else if(a[i]>=90&&a[i]<=99)b[9]+=1;elseb[10]+=1;。
全国计算机二级C语言上机考试题库(可直接打印)
2012年9月全国计算机考试上机题库100套第01套:给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。
例如,输入一个数:27638496,新的数:为739。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!给定源程序:#include <stdio.h>void fun(unsigned long *n){ unsigned long x=0, i; int t;i=1;while(*n){ t=*n % __1__;if(t%2!= __2__){ x=x+t*i; i=i*10; }*n =*n /10;}*n=__3__;}main(){ unsigned long n=-1;while(n>99999999||n<0){ printf("Please input(0<n<100000000): "); scanf("%ld",&n); } fun(&n);printf("\nThe result is: %ld\n",n);}解题思路:第一处:t是通过取模的方式来得到*n的个位数字,所以应填:10。
第二处:判断是否是奇数,所以应填:0。
第三处:最后通形参n来返回新数x,所以应填:x。
给定程序MODI1.C中函数fun 的功能是:计算n!。
例如,给n输入5,则输出120.000000。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include <stdio.h>double fun ( int n ){ double result = 1.0 ;if n = = 0return 1.0 ;while( n >1 && n < 170 )result *= n--return result ;}main ( ){ int n ;printf("Input N:") ;scanf("%d", &n) ;printf("\n\n%d! =%lf\n\n", n, fun(n)) ;}解题思路:第一处:条件语句书写格式错误,应改为:if (n==0)。
计算机等级考试二级C语言上机操作指导.docx
程序设计是实践性很强的过程,任何稈序最终都必须在计算机上运行,以检验程序的匸确少否。
因此在学习程序设计中,-•定要重视上机实践环节,通过上机可以加深理解C语言的有关概念,以巩固理论知识,另一方面也可以培养程序调试的能力与技巧。
一.C语言程序的上机步骤按照C语言语法规则而编写的C程序称为源程序。
源程序由字母、数字及其它符号等构成,在计算机内部用相应的ASCII码表示,并保存在扩展名为C”的文件中。
源程序是无法肓接被计算机运行的,因为计算机的CPU只能执行二进制的机器指令。
这就需要把ASCII码的源程序先翻译成机器指令,然后计算机的CPU才能运行翻译好的程序。
源程序翻译过程由两个步骤实现:编译少连接。
首先对源程序进行编译处理,即把每一条语句丿IJ若丁条机器指令来实现,以牛成市机器指令纽成的口标程序。
但口标程序还不能马上交计算机肓接运行,因为在源程序中,输入、输出以及常用函数运算并不是用户白己编写的,而宜接调用系统函数库中的库函数。
因此,必须把“库函数"的处理过程连接到经编译生成的冃标程序中,生成可执行程序,并经机器指令的地址重定位,便可由计算机运行,最终得到结果。
C语言程序的调试、运行步骤可以用图A・1表示:开始语法错误连接佬误运行错误棵序调试图A-l C语言程序的调试、运行步骤图A・1中,虚线表示当某一步骤出现错误时的修改路线。
运行时,无论是出现编译错谋、连接错课,述是运行结果不对(源程序屮有语法错课或逻辑错课),都需要修改源程序, 并对它重新编译、连接和运行,直至将程序调试正确为止。
除了较简单的情况,一般的程序很难一次就能做到完全止确。
在上机过程中,根据出错现象找出错误并改止称为程序调试。
我们要在学习程序设计过程屮,逐步培养调试程序目标程序的能力,它不可能靠几旬话讲清楚,要靠H己在上机屮不断摸索总结,它可以说是一种经验积累。
程序中的错误大致可分为三类:2程序编译时检查出來的语法错谋;2连接时出现的错误;2程序执行过程中的错误。
二级c语言上机考试操作步骤及流程
二级c语言上机考试操作步骤及流程
下面是一个简单的二级C语言上机考试操作步骤及流程:
1. 考试开始前,考生将个人证件(身份证、学生证等)放在桌面上,并等待监考老师的指示;
2. 监考老师发放试卷,考生领取试卷后,立即将试卷翻过来,不得翻阅试题内容;
3. 监考老师宣布考试开始时间,考生可以翻开试卷开始作答;
4. 在考试过程中,考生首先需要阅读题目要求和限制条件,并理解题意;
5. 考生可以使用纸和笔来辅助计算或草稿,但不得在试卷上作任何标记;
6. 考生根据题目要求,设计程序算法,并编写代码实现;
7. 在编写代码时,考生可以使用自己熟悉的开发环境(如Dev-C++、Visual Studio等),但要保证代码的正确性和可运行性;
8. 在编写完程序后,考生需要进行代码调试和测试,确保程序能够按照题目要求正常运行;
9. 在考试时间结束前,考生需要将代码保存并打印,然后将试
卷和代码一起交给监考老师;
10. 考试结束后,监考老师会收回试卷和答案,并进行查对和
评分。
以上是一个简单的二级C语言上机考试操作步骤及流程,不
同学校和考试机构可能会有些差异,具体操作以考试规定为准。
国家二级C语言机试(C语言程序设计)模拟试卷33
国家二级C语言机试(C语言程序设计)模拟试卷33(总分:70.00,做题时间:90分钟)一、选择题(总题数:35,分数:70.00)1.要求通过while循环不断读入字符,当读入字母N时结束循环。
若变量已正确定义,以下正确的程序段是(分数:2.00)A.while(ch=getchar0='N')printf("%c",ch);B.while(ch=getchar()=="N")printf("%c",ch);C.while((ch=getchar())!='N')printf("%c",ch);√D.while((ch=getchar())=='N')printf("%c",ch);解析:解析:while循环的执行过程如下:①计算while后面圆括号中表达式的值,当值为非0时,执行步骤②;当值为0时,执行步骤④;②执行循环体一次:③转去执行步骤①;④退出循环。
在选项C 中,表达式(ch=getchar())!='N'表示输入的字符不等于N,如果这个条件表达式成立,则执行循环体,打印输出输入的字符。
如果这个条件表达式不成立,即输入的字符等于N,则退出循环。
2.若有以下程序 main(){int a=-2,b=0; while(a++) ++b; pfintf("%d,%d\n",a,b);} 则程序的输出结果是(分数:2.00)A.0,2B.1,2 √C.1.3D.2,3解析:解析:循环体执行两次,第一次表达式a++值为-2,a的值为-1,执行循环体++b,b值为1,第二次表达式a++值为-1,a的值等于0,执行++b,b值为2,第三次判断条件a++,表达式值为0,不执行循环体,但是条件判断以后,a的值为1。
3.由以下while构成的循环,循环体执行的次数是int k=0;while(k=1)k++;(分数:2.00)A.一次也不执行B.执行一次C.无限次√D.有语法错,不能执行解析:解析:循环条件表达式为赋值表达式k=-1,因此循环执行无限次。
C语言上机软件VC++6.0中文版安装
Microsoft Visual C++6.0介绍及使用从2008年4月开始,全国计算机等级考试将全面停止Turbo C2.0(简称TC)软件的使用,所有参加二级C语言、三级信息技术、网络技术和数据库技术上机考试的考生,都要在Visual C++6.0(简称VC)环境下调试运行C程序。
众所周知,VC软件主要是用来开发C++程序的,如何在VC下调试运行C程序,对于众多程序设计者来说,确实是一个新的话题。
VC与TC的差异,主要是体现在程序设计语言C++与C的关系上。
其实,了解计算机程序设计的人都知道,C++是C语言的升级板,VC是在Windows进行C++程序设计的主要软件,VC完全兼容了C的功能,也就是说,在VC下是完全能够进行C语言程序开发。
我以前下载安装过很多次_VC++6.0中文版,但是每次都无法正常安装使用,下面就让我告诉你下载地址吧,保证可以正常使用,我也是偶然碰到的按住ctr点击“全国计算机等级考试C语言上机软件_VC++6.0中文版.rar”安装安装后你可能会出现下面的对话框,在左下角“不再显示此信息”勾上,然后点击“运行程序就”可以了Visual C++ 6.0编程环境的使用目录1 编制并运行一个简单程序 (3)1.1编制并运行程序的“四步曲” (3)1.2工程(P ROJECT)以及工程工作区(P ROJECT W ORKSPACE) (3)1.3启动并进入VC6的集成开发环境 (4)1.4创建工程并输入源程序代码 (5)1.5不创建工程,直接输入源程序代码 (8)1.6编译、链接而后运行程序 (8)1.7及时备份自己的创作 (9)1.8将自己设计的产品提供给他人使用 (9)2 VC6集成开发环境使用参考 (10)2.1VC6的常用菜单命令项 (10)2.2VC6的主要工作窗口 (12)3 严谨思维,调试程序 (13)3.1什么时候需要对程序进行调试 (13)3.2对程序进行调试的基本手段和方法 (14)3.3对一个简单程序的调试过程 (15)3.4设计合适的程序调试方案 (17)3.5优秀程序员的基本素质——丰富的想象、严谨的思维 (18)4 编译与链接过程中常见的出错提示 (20)4.1常见编译错误 (21)4.2常见链接错误 (24)1 编制并运行一个简单程序1.1 编制并运行程序的“四步曲”让我们用VC6先来编制一个最简单的程序,并让它运行(执行)而得出结果,以此来作为了解VC6的开端。
C语言省二级考试上机模拟试题库及答案
C语言省二级考试上机模拟试题库试题整理时间:2010、3、7 一、求最值问题1,以下程序中"____ N ____"是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
该程序功能:对x=1,2,...,10,求f(x)=x*x-5*x+sin(x)的最大值。
#include <stdio.h>#include <math.h>#define f(x) x*x-5*x+sin(x)void main(){ int x; float max;max=f(1);for(x=2;x<=10;x++)if(max<f(x)) max=f(x);printf("%f\n",max);}2,设计程序:对x=1,2,...,10,求函数f(x)=x-10*cos(x)-5*sin(x)的最大值,并将该数以格式"%.3f"写到考生目录中Paper子目录下的新建文件design.dat。
#include <stdio.h>#include <math.h>void main(){ FILE *p;float f(float),max,x;max=f(1);for(x=2;x<=10;x++)if(max<f(x)) max=f(x);printf("%.3f",max);p=fopen(“design.dat”,”w”);fprintf(p, "%.3f",max);fclose(p);}float f(float x){return (x-10*cos(x)-5*sin(x));}3,设计程序:z=f(x,y)=(3.14*x-y)/(x+y),若x、y取值为区间[1,6]的整数,找出使z取最小值的x1、y1,并将x1、y1以格式"%d,%d"写到考生目录中Paper子目录下的新建文件design.dat。
计算机二级(C语言)机考步骤
计算机二级(C语言)机考步骤哎~考了三次全国计算机二级考试(C语言),终于在2020年九月份把计算机二级C语言证书给拿下了。
其中的心酸只有自己懂。
今天把我上机考试的主要步骤和考试要注意的事项给写下来,分享给需要的同学,希望能为大家提供帮助。
考前复习1.如果你想通过考试,你必须在考试前知道试卷的结构和考试的内容。
C语言考试要考的内容有:C语言(约占80%)+数据结构(约占10%)+软件基础(3%)+数据库基础(5%)+操作系统原理(约占2%)。
要考操作系统原理我也是最近一次考试才发现的其中的所占的比例仅供参考。
试卷结构及分值:选择题(共40题40分)+操作题(填空题18分+修改题18分+编程题24分)(共3题60分)由此看来C语言还是重头戏,特别是后面的操作题2.知道了考试的内容,我们就知道如何安排复习了。
1、大量做题,做试卷。
我们都知道现在通过各大考试都需要我们去刷题。
只有刷题,才能检测出我们学了多少,对知识掌握的有多好。
如果刷题的话,建议买历年真题。
2、回归课本,总结反思。
在刷题的基础上回到课本上,尤其是一些容易出错的题,然后再去复习自己没有掌握和自己不熟悉的知识点。
不要从头到尾看书,尤其是临近考试的同学。
这个审核效率低,会浪费大浪。
3、多做上机实验,弄清楚考试流程C语言考试用的软件是VC++2010中文版,所以考试前你最好自己电脑安装一个VC++2010中文版的,然后充分熟悉掌握这个软件的使用方法,会用它写C语言程序。
这里我把这个软件的使用方法大致写下来。
下载好的软件如下:VC++2010因为找不到中文版,所以下载了英文版,考试用中文版,不过没关系,记住位置或者翻译一下就行了。
使用方法:1.双击鼠标打开这个软件,打开后会是这个样子(我之前写过)。
2、鼠标点击New Project3.点击win32控制台应用工具(倒数第三个)这里我写一个工程名为hello的项目如下,点击OK。
4.点击next5、选择empty project(空项目)点击finish由此一个工程名为hello的文件夹就建完成了,接下来就可以写程序了。
全国二级考试计算机-二级C上机考试题库
类型一:调整一个数的个、十、百、千位1.请编写函数fun,其功能是:将两个两位数的正整数2.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是将a、b合并形成一个整数放在c中。
合并的方式是将a数的十位和个位数依次放在c数的千位和十位上,b a数的十位和个位数依次放在c数的个位和百位上,b 数的十位和个位数依次放在c数的百位和个位上。
数的十位和个位数依次放在C数的千位和十位上。
例如,当a=45,b=12,调用该函数后C=4152。
例如,当a=45,b=12,调用该函数后C=1524。
*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10); *c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);填空:STYPE FILE Fp 填空:*fw str str改错:for( i=0; i<=sl; i ++) 把s后字母改为小写L 改错:void fun (1 ong s,l ong *t)t[2*sl] = '\0'; sl=sl*10;3.请编写函数fun,其功能是:将两个两位数的正整数4.请编写函数fun,其功能是将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是将a、b合并形成一个整数放在C中。
合并的方式是将a数的十位和个位数依次放在c数的个位和百位上,b a数的十位和个位数依次放在C数的十位和千位上,b 数的十位和个位数依次放在c数的十位和千位上。
数的十位和个位数依次放在C数的百位和个位上。
例如,当a=45,b=12,调用该函数后C=2514。
例如,当a=45,b=12,调用该函数后C=5142。
*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10); *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);填空:fp fclose(fp) fname 填空:"r" fs ft改错:for ( i=j+1; i<=n_1 ; i++ ) 改错:if (d%2==0)p=i; s /= 10;5.请编写函数fun,其功能是:将两个两位数的正整数6.请编写函数fun,其功能是将两个两位数的正整数a、b合并形成一个整数放在c中。
国家二级C语言机考程序设计题技巧
计算机国家二级C机考程序设计题技巧双击桌面上的,启动计算机等级考试二级模拟软件;启动软件后出现如下界面,选择练习模式后确定:之后出现下面窗口,选择一套题,我们提供的模拟软件中共提供了50套模拟题目,这50套题目分别对应着二级上机题库的前50套题。
输入1-50之间的数字确定后就可以抽取相应的题目,例如输入1后确定,按任意键继续。
桌面上出现了下图所示的窗口(取名:状态条)和下图所示的窗口(取名:题目窗口)考生状态条上面显示抽取的题目的序号和考试已经用去的时间。
考生窗口的左上角显示了考生的目录,图中的考生目录为:D:\Exam\24010001,从考生窗口的右上角可以看出,机考共有三个题目,分别是程序填空题、程序修改题,程序编写题。
做程序填空题的步骤如下:1.选择考生窗口右上角的程序填空题按钮,就会在下面的空白区域出现填空题的具体题目和要求。
考生读完题目要求之后就可以开始答题了。
选择题目窗口左上角的答题菜单中的“启动Microsoft visual c++”选项就可以启动vc编译软件。
2.选择文件菜单下的打开选项,如图所示:之后会弹出一个打开窗口:在窗口的1处单击,找到考生目录所指示的目录,本题的目录为D:\Exam\24010001,找到目录:可以发现里面包含有三个文件,分别是blank1.c,modi1.c,prog1.c三个文件,这三个文件分别对应着填空题,修改题和程序设计题。
做填空题只需要选中blank1.c后单击窗口右下角的打开按钮即可。
这时vc编译软件就会帮我们打开这个文件,并出现填空题的代码。
具体做题步骤参考《二级上机题库》第12页,对于程序修改题做题方法参照填空题,参见《二级上机题库》第75页。
下面详细介绍程序设计题的做题技巧:对于程序设计题,我们分了一下三大类:第一种:在考生的目录文件夹下含有in.dat文件:前50题中的:1,3,4,5,7,8,9,10,12,13,15,17,18,19,22,24,25,26,27,28,29,30,31,32,35, 37,38,39,40,41,42,43,44,45,46,50属于第一类。
计算机二级的模拟测试工具推荐
计算机二级的模拟测试工具推荐计算机二级考试是对计算机应用能力的考核,对于想要提升自己的计算机水平的人来说,参加模拟测试是一个非常好的方式。
通过模拟测试,我们可以了解自己在不同知识点上的薄弱处,并及时进行针对性的复习和提高。
在这篇文章中,我将向大家推荐几种优秀的计算机二级模拟测试工具,希望对大家备考有所帮助。
一、题库类模拟测试工具1. 寒江雪题库寒江雪题库是一款知名的计算机考试题库软件,拥有大量的二级考试真题和模拟题。
软件界面简洁直观,题目按照考试大纲进行分类,用户可以根据自己的复习计划选择相应的章节进行练习。
同时,寒江雪题库还提供错题本和模拟考试等功能,能够帮助用户进行科学有效的复习。
该软件的题目难度适中,对于想要全面提高计算机应用能力的考生来说是一个很好的选择。
2. 在线考试网在线考试网是一个集合了各类考试题库的网站,其中包括了计算机二级的模拟测试库。
用户可以在该网站上注册账号,选择相应的科目进行模拟测试。
该网站的好处在于,题库更新及时,且考试界面与真实考试界面相似,能够帮助用户更好地适应考试环境。
但需要注意的是,由于该网站的免费资源众多,所以在峰值时间可能会出现访问缓慢或者题目显示不全等问题,用户可以选择在非高峰时段使用。
二、仿真软件类模拟测试工具1. 考试宝典计算机二级模拟软件考试宝典是一款专门针对计算机考试的模拟软件,通过仿真真实的考试环境,帮助考生提升应试能力。
该软件提供了多种科目的模拟测试,用户可以根据自己的需要选择不同的科目进行练习。
此外,该软件还提供了全真模拟考试的功能,可以让考生更好地模拟真实考试的情况,对于熟悉考试流程和提高答题速度非常有帮助。
2. WIN-E800模拟软件WIN-E800是一款常用的计算机二级模拟软件,拥有大量的模拟试题和详细的解析,帮助考生全面了解每个知识点的考点和考察方式。
该软件还提供了云端存储的功能,用户可以将自己的做题记录上传至云端,方便在不同设备上进行学习和复习。