对口高考c语言程序写结果专题训练
2017年下期对口升学计算机专业第一次月考综合类C语言试题
2017年下期对口升学计算机专业综合类C语言试题总分190分一、单选择题(每题5分,共60分)1、定义一个文件指针fp语句,以下正确的是()A、file fpB、file *fp;C、FILE *fpD、FILE *fp;2、以只读的方式打开一个二进文件c:\tlh\1.txt的语句()A、fp=fopen(“c:\\tlh\\1.txt”,”wb”);B、fp=fopen(“c:\\tlh\\1.txt”,”w”);C、fp=fopen(“c:\\tlh\\1.txt”,”r”);D、fp=fopen(“c:\\tlh\\1.txt”,”rb”);3、以下程序段输出的结果是()int a[]={1,2,3,4,5,6};FILE *fp;fp=fopen(“1.txt”,”wb”);fwrite(a+1,sizeof(int),5,fp);fclose(fp);fp=fopen(“1.txt”,”r b”);fread(a,sizeof(int),3,fp);fclose(fp);fprintf(“%d”,a[3]);A、4B、5C、6D、34、有以下程序main(){char s[]="012xy\08s34f4w2";int i, n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9') n++;printf("%d\n",n);}程序运行后的输出结果是()A)0 B)3 C)7 D)85、有以下程序:#include<stdio.h>#include<string.h>main(), char a*5+*10+=,“china”,”beijing”,”you”,”tiananmen”,”welcome”-;int i,j; char t[10];for(i=0;i<4;i++)for(j=i+1;j<5;j++)if(strcmp(a[i],a[j])>0){ strcpy(t,a[i]); strcpy(a[i],a[j]); strcpy(a[i],t);}puts(a[3]);}程序运行后的输出结果是()A.beijingB.chinaC.welcomeD.tiananmen6、有以下程序#include <stdio.h>#include <string.h>main(),char x*+=”STRING”;x*0+=0;x*1+=’\0’;x*2+=’0’;printf(“%d %d\n”,sizeof(x),strlen(x));}程序运行后的输出结果是()A)6 1 B)7 0 C)6 3 D)7 17、若有定义语句:int m[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是()A)m[--i] B)m[2*2] C)m[m[0]] D)m[m[i]]8、若要定义一个具有5个元素的整型数组,以下错误的定义语句是()A)int a[5]={0}; B)int b[]={0,0,0,0,0};C)int c[2+3]; D)int i=5,d[i];9、以下数组定义中错误的是()A)int x[][3]={0};B)int x[2][3]={{1,2},{3,4},{5,6}};C)int x[][3]={{1,2,3},{4,5,6}};D)int x[2][3]={1,2,3,4,5,6};10、从指定的文件中得到6个字符语句是()A、fgets(a,6,fp);B、fgets(a,7,fp);C、fgets(fp,6,a);D、fgets(fp,7,a);11、有以下程序#include<stdio.h>main(){FILE *fp;int k,n,i,a[6]={1,2,3,4,5,6};fp=fopen(“d2.dat”,”w”);for(i=0;i<6;i++) fprintf(fp,”%d\n”,a*i+);fclose(fp);fp=fopen(“d2.dat”,”r”);for(i=0;i<3;i++) fscanf(fp,”%d%d”,&k,&n);fclose(fp);printf(“%d,%d\n”,k,n);}程序运行后的输出结果是()A.1,2B.3,4C.5,6D.123,45612、有以下程序#include <stdio.h>main(){FILE *f;f=fopen(“filea.txt”,”w”);fprintf(f,”abc”);fclose(f);}若文本文件filea.txt中原有内容为:hello,则运行以上程序后,文件filea.txt的内容为()A)helloabc B)abclo C)abc D)abchello二、程序分析题13读程序写运行结果(每题5分,共25分)①程序运行后的输出结果是#include <stdio.h>main(){int i,j,a[][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)for(j=i;j<3;j++) printf(“%d”,a*i+*j+);printf(“\n”);}②有以下程序#include <stdio.h>main(){FILE *fp;char str[10];fp=fopen(“myfile.dat”,”w”);fputs(“abc”,fp);fclose(fp);fp=fopen(“myfile,data”,”a+”);fprintf(fp,”%d”,28);rewind(fp);fscanf(fp,”%s”,str);puts(str);fclose(fp);}程序运行后的输出结果是___________③、以下程序运行后的输出结果是【】。
黑龙江省职高对口升学C语言编程基础模拟试卷
⿊龙江省职⾼对⼝升学C语⾔编程基础模拟试卷⿊龙江省职⾼对⼝升学C语⾔编程基础模拟试卷⼀、单项选择题:共20⼩题,每⼩题2分,共40分。
1、在C语⾔程序中,main()函数的位置()。
A、必须作为第⼀个函数B、必须放在⽤户⾃定义函数之后C、可以任意D、必须作为最后⼀个函数2、C语⾔提供的合法关键字是()。
A、AUTOB、shortC、uzsignedD、comnt3、在C语⾔中,下列()为合法的字符常量。
A、’\084’B、’/x45’C、”ab”D、”?”4、在C语⾔中,以下四种运算符中,优先级最⾼的是()。
A、>=B、&&C、+=D、!=5、在C语⾔中,表达式18/4*sqrt(4.0)值的数据类型是()。
A、intB、floatC、longD、double6、在C语⾔中,表达式sizeof(long)的值为()。
A、1D、87、在C语⾔中,若以定义x和y是double型变量,且x=1,则表达式y=x+3/2的值是()。
A、1B、1.5C、2.0D、2.58、在C语⾔中,设x为整型变量,且x=8,则表达式x+=2+x%3的值为()。
A、11B、12C、6D、49、在C语⾔中,设a、b和c都是int型变量,且a=3,b=4,c=5,则下⾯表达式中,值为0的表达式是()。
A、’n’&&’b’B、a<=bC、a||b+c&&b-cD、!(a10、在C语⾔中,设a、b为int型变量,且b=5,则执⾏以下语句后,变量a的值为()。
a=2+(b+b++,b+8,++b);A、13B、14C、8D、911、在C语⾔中,如果a=1,b=2,c=3,d=4,则条件表达式aA、1B、2C、3D、412、在C语⾔中,已知i,j,k为int型变量,若从键盘输⼊:4 5 6(回车),要使i的值为4,j的值为5,k的值为6,以下选项中正确的输⼊语句是()。
A、scanf(“%2d%2d%2d”,i,j,k);B、scanf(“%d%d%d”,&i,&j,&k);C、scanf(“%d,%d,%d”,&i,&j,&k);D 、scanf(“i=%d ,j=%d ,k=%d”,&i,&j,&k);13、在C 语⾔中,设a 为int 型变量,要求当a 的值为偶数时,表达式的值为“真”,a 的值为奇数时,表达式的值为“假”,以下不满⾜要求的表达式是()。
职高对口升学c语言试题及答案
职高对口升学c语言试题及答案一、选择题(每题2分,共10分)1. C语言中,以下哪个选项是正确的数据类型?A. intB. floatC. doubleD. All of the above答案:D2. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. All of the above答案:C3. 在C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. voidD. All of the above答案:C4. 在C语言中,以下哪个运算符用于比较两个值是否不相等?A. ==B. !=C. =D. All of the above答案:B5. C语言中,以下哪个选项表示逻辑与运算?A. &&B. ||C. !D. All of the above答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是________。
答案:int2. 在C语言中,________运算符用于将一个值赋给变量。
答案:=3. C语言中,________函数用于输出字符串。
答案:printf4. C语言中,________函数用于输入一个整数。
答案:scanf5. C语言中,________关键字用于定义一个数组。
答案:array三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出1到100之间所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```2. 编写一个C语言程序,实现输入一个字符串,然后输出其反转后的字符串。
对口c语言高考测试题及答案
对口c语言高考测试题及答案1. 以下哪个选项是C语言中的合法变量名?A. 2variableB. variable-nameC. variable_nameD. variable!name答案:C2. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. defineD. int答案:D3. 以下哪个选项是C语言中正确的注释方式?A. // This is a commentB. /* This is a comment */C. //* This is a commentD. /* This is a comment */答案:A4. 在C语言中,用于定义一个整型数组的语法是什么?A. int array[10];B. int [10] array;C. int array = 10;D. int array[10] = {0};答案:A5. C语言中,哪个运算符用于计算两个整数的和?A. +B. -C. *D. /答案:A6. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str = "Hello";C. char str[] = 'Hello';D. char str[] = {"Hello"};答案:A7. C语言中,以下哪个选项是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y)D. if x > y答案:A8. 在C语言中,以下哪个选项是正确的循环结构?A. for (int i = 0; i < 10; i++)B. for (int i = 0; i < 10; i++)C. while (i < 10)D. do-while (i < 10)答案:A9. C语言中,以下哪个函数用于计算数组的长度?A. sizeofB. lengthC. sizeD. count答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. openfileC. fileopenD. file答案:A11. C语言中,以下哪个选项是正确的结构体定义方式?A. struct Student {int id;char name[50];};B. struct Student = {int id;char name[50];};C. struct Student {int id;char name;};D. struct Student = {int id;char name[50];};答案:A12. 在C语言中,以下哪个选项是正确的指针声明方式?A. int *ptr;B. int ptr*;C. int *ptr = 0;D. int ptr = 0;答案:A13. C语言中,以下哪个选项是正确的递归函数调用?A. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}B. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n);}C. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}D. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}答案:A14. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. #define PI = 3.14159答案:A15. C语言中,以下哪个选项是正确的枚举定义方式?A. enum Color {RED, GREEN, BLUE};B. enum Color {RED, GREEN, BLUE} color;C. enum Color {RED, GREEN, BLUE};D. enum Color {RED, GREEN, BLUE} color;答案:A。
c语言程序设计改错和根据程序写结果的练习
c语言程序设计改错和根据程序写结果的练习改错练习1.语法错误2.缺少头文件3.函数相关的错误4.功能是否实现问题5.指针使用问题6.循环次数和终止7.字符型数组和指针存储字符串的时候的差异程序改错练习、、1.求1,2,3,4,5,6,….n的乘积#includeint main(){ int sum;int n,i=1;scanf("%d",n);printf(“\n”);while(i<n);< p="">{ sum=sum*i;i++; }printf("sum=%c",sum); printf("sum=%d",sum);}2.求一个数组中最大值及其下标。
#includevoid main(){ int max,j,m;int a[5];for(j=1,j<=5,j++)scanf(“%d”,a);max=a[1];for(j=1;j<=5;j++)if(max>a[j]){ max=a[j];m=j;printf(“下标:%d\n最大值:%d”, j, max) printf(“下标:%d\n 最大值:%d”, m,max); }3.用一个函数求两个数之和和之积。
sum(x,y){float z1,z2;z1=x+y;z2=x*yreturn z1,z2;}Main(){float a,b;printf(“Input a,b”);scanf(“%d%d”,a,b);printf(“a+b=%d\t a*b=%d\n”,sum(a,b));}4. 调用函数swap()实现交换主函数中(实参)变量a,b的值。
#includevoid swap(float * a, float * b){float x;x=a,a=b,b=x;}Void main(){float a=10,b=20;swap(a,b);printf(“a=%f/tb=%f\n”,a,b)}5. 用指针实现变量a的值的输入,输出#includeVoid main(){Int a;printf(“Input a:\n”);int *p;sc anf(“%d”,p);a=*p;printf(“\n a=%d\n”,&a);} ;6. 字符串组的输入输出#include#define M 100#define N 200;void main(){ char print(char *str[],int n); char s[M][N];char *ps[M];int I;p=s;for(i=1;i<=M;i++)gets(&ps[i]);print(ps[0]);]char print(char *str[],int n){int I;for(i=0;i<n;i++);< p="">puts(str++);}8.调用函数fun()实现字符串组中的所有字符串的连接#includechar *fun(char *pstr){ int I;char *new;for(i=0;i<10;i++)strcat(new,pstr[i]);return(new);}void main(){ char *str[]={“I”,”like”,”programming”,”very”,”much”,”!”};printf(“%s”,fun(str));}9.下面程序的功能是对a数组中的元素按从大到小的顺序排序#include#define N 10;main(){int a[N]={2,17,8,3,24,53,82,1,29,101};int i,j,k,t;for(i=0;i<9;i++){ k=i;for(j=i+1;j<10;j++)if(a[j]<a[k])< p="">k=j;if(k=i){t=a[j];a[j]=a[i];a[i]=t;}}}10.下面程序的功能是交换变量a和b中的值#includemain(){int a,b,*p,*q,*t;p=&aq=&bprintf("请输入变量a和b的值:");scanf("%d%d", &p,&q);*t=*p ;*p=*q ;*q=*tprintf("交换后a和b的值:a=%d b=%d\n",a,b);}11.假设某袋子中装有3个红球,5个白球,6个黑球,现从该袋子中任意取出8个球,下面程序的功能是输出这8个球中至少有一个白球的所有方案。
湖南省历界对口高考C语言真题答案
历界高考C语言真题2007年真题一、程序分析题1、#include <stdio.h>main( ){ int x=3;doprintf(“%d”,x-=2);while(!(--x));}2、#include <stdio.h>main( ){ int x=4,y=8,z;z=x<<2|y;printf(“%d”,z);}3、#include <stdio.h>main( ){ char x=’E’,y=’e’;printf(“%c”,x+32);printf(“%c”,(x--,y++));printf(“%c\n”,x==y?x+=32:(y-=32));}4、#include <stdio.h>main( ){ int t=2;while(t<5)switch(t%2){ case 0: t++;printf(“#”);break;case 1: t+=2;printf(“*”);default:printf(“\n”);}}5、#include <stdio.h>main( ){ char str1[50]=”Beijing 2008”,*q=str1;char str2[50]=”One world One Dream!”,*p=str2;while(*p!=’\0’) p++;while(*q!=’\0’) *p++=*q++;printf(“%s”,str2);}6 #include <stdio.h>#include<string.h>main( ) Array { char s[]=”abcdefg”,t;int i=0,j=strlen(s)-1;while(i<j){ t=s[i],s[i]=s[j],a[j]=t;i++,j--;}puts(s);}二、程序填空题1、下面程序的功能是求1000以的完数。
对口升学计算机专业C语言类试题
20XX综合C试题总 190一、填空题(每题4 ,共120)1. # define f(x) (x*x)main(){ int i1, i2;i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ;printf("%d, %d\n",i1,i2); }是()。
A 64, 28B 4, 4C 4, 3D 64, 642.若 <<,sizeof,^,&=列次 是____.A、sizeof,&=,<<,^B、sizeof,<<,^,&=C、^,<<,sizeof,&=D、<<,^,&=,sizeof3.sizeof(float)是()A、一 用B、一 合 C、一 达D、一 达4. 是()A、 达 a&=b等价于a=a&bB、 达 a|=b等价于a=a|bC、 达 a!=b等价于a=a!bD、 达 a^=b等价于a=a^b5.若x=2,y=3,x&y 是__()A、0B、2C、3D、56. , 每 一 , 于() A、 2 B、 2C、 4D、 47. 是指()A、键盘B、显 器C、软盘D、硬盘8.若执 fop en,回值是()A、地址值B、0C、1D、EOF9.若要用fop en 一 , 要 , 是()A、"ab+"B、"wb+"C、"rb+"D、"ab"10.fscanf 用 是__()A、fscanf(fp,, 列)B、fscanf(, 列,fp);C、fscanf(, 指针, 列);D、fscanf( 指针, , 列);11.fgetc 用是 指 一 , 是____.A、只B、追加C、 或D、答案b和c都 12. 用 句:fseek(fp,-20L,2); 含义是()A、 指针 离 头20B、 指针 动20C、 指针 20D、 指针 离2013.利用fsee k_()A、fseek( 指针,起始 , 量);B、fseek(fp, 量,起始 );C、fseek( 量,起始 ,fp);D、fseek(起始 , 量, 指针);14. 执 fop en,ferror值是()A、TUREB、-1C、1D、015、若 义如 :#define X 5#define Y X+1#define Z Y*X/2执 printf("%d\n",Z); 句 , 是( )。
对口升学C语言单元练习卷
对口升学C语言单元练习卷C程序设计第一、三章单元练习题(制卷:周双林)一、选择题1. C程序中main函数的位置()A、必须在最开始B、必须在系统库函数后面C、可以在自定义函数后面D、必须在最后2.设k=6,则执行a=--k;后,a的值为 ( )A.4B.5C.6D.33. 下列的指数形式正确的是( )A.4.6EB.E+4C.1.23E-10D.4.3E6.84.设x=5,y=2.0,则表达式x/y的值为 ( )A. 3.5B.4C.2D.2.55.选出以下数据中数值最小的()A.66B. …Z?C.?F?D.?A?6. 下列合法的 C语言标识符是 ( )A. ?abB.1a3C. _sumaD.!a3b7.转义字符中表示换行和退格的是( )A.\n,\bB. \n,\tC. \b,\tD. \t,\f8. 列四组选项中,均不是C语言关键字的选项是( )。
A、 define IF typeB、 getc char printfC、 include case scanfD、while go pow9.字符(char)数据的取值范围是( )A.0~255B.0~127C.0~65535D. 32768~3276710. 设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为。
A、 0~255B、 0~32767C、 0~65535D、0~214748364711.下列不合法的常量是( )A.”program”B.-e8C.0X35D.12312.C语言中的整型所占存储空间字节数是( )A.1B. 2C. 4D. 813. 设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为( ) 。
A、 floatB、 charC、 intD、 double14、阅读以下程序,当输入数据的形式为:25,13,10(注:表示回车),则正确的输出结果为()。
c每题都有程序适合中职技术高考
C语言经典案例53题(每题都有程序,适合中职技术高考)1、求100之内自然数中最大的能被17整除的数。
#include<>void main(){ int i;for(i=100;i>0;i--)if(i%17==0)break;printf("%d\n",i);}2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。
#include<>void main(){int a,b,c;for(a=1;a<=9;a++){for(b=0;b<=9;b++){for(c=1;c<=9;c++)if(a*100+b*10+c+c*100+b*10+a==1333)printf("%d,%d,%d\n",a,b,c);}}}3、计算并输出200-400之间不能被3整除的整数的和。
#include<>void main(){ int i,sum=0;for(i=200;i<=400;i++)if(i%3!=0)sum=sum+i;printf("%d\n",sum);}4、从键盘输入10个数,统计非负数的个数,并计算非负数的和。
#include<>void main(){ int i,n=0,sum=0;int a[10];printf(“请输入10个数:”);for(i=0;i<10;i++)scanf(“%d”,&a[i]);for(i=0;i<10;i++)if(a[i]>=0){ sum=sum+a[i];n++;}printf("非负个数是%d,sum=%d\n",n,sum);}5、求100之内自然数中偶数之和。
#include<>void main(){ int i,sum=0;for(i=0;i<=100;i++)if(i%2==0)sum=sum+i;printf("sum=%d\n",sum);}6、输入5个数,求和并输出。
湖南省历界对口高考C语言真题
历界高考C语言真题2007年真题一、程序分析题1、#include <>main( ){ int x=3;doprintf(“%d”,x-=2);while(!(--x));}2、#include <>main( ){ int x=4,y=8,z;z=x<<2|y;printf(“%d”,z);}3、#include <>main( ){ char x=’E’,y=’e’;printf(“%c”,x+32);printf(“%c”,(x--,y++));printf(“%c\n”,x==y?x+=32:(y-=32));}4、#include <>main( ){ int t=2;while(t<5)switch(t%2){ case 0: t++;printf(“#”);break;case 1: t+=2;printf(“*”);default:printf(“\n ”);}}5、#include <>main( ){ char str1[50]=”Beijing 2008”,*q=str1;char str2[50]=”One world One Dream!”,*p=str2;while(*p!=’\0’) p++;while(*q!=’\0’) *p++=*q++;*p=’\0’;printf(“%s ”,str2);}6 #include <>#include<>main( ){ char s[]=”abcdefg ”,t;int i=0,j=strlen(s)-1;while(i<j){ t=s[i],s[i]=s[j],a[j]=t;i++,j--;}puts(s);}二、程序填空题1、下面程序的功能是求1000以内的完数。
完数是指一个数的子因子之和等于这个数本身。
#include<>main( ){ int i,j,sum;for(i=1; i<1000 ;i++){ sum=0;for(j=1;j<i;j++)if(i%j==0)sum+=j;if( sum==i ) printf(“%d\n”,i);}}2、以下程序是统计一维数组arr中小于平均值的元素个数。
(完整word版)单招高考C语言考卷-(答案)
C. a[4][1+2]
D .a[ ][2]
A ).
B.int a[][3]={2,3,4,5,6,7};
C. int a[3][3]={0}; D. int a[5][4]={{1,2},{2,3},{3,4},{4,5}};
28、若有以下数组定义 : char ch[]="book_120\n";
2、符号常量的定义方法是 #define 常量名 常量 。
3、设有下列运算符: <<、 +、++ 、 && 、 >=,其中优先级最高的是 级最低的是 && 。
++ ,优先
4、 putchar()函数可以向终端输出一个
字符
。
5、设有定义语句“ int a[3][4]={{1}, {2}, {3}} ”,则 a[2][1] 的值为
A. 7
B.8
29、以下程序段的输出结果是( A ) .
则数组 ch 的存储长度是( D )。
C.9
D.10
char str[8]={'a','b','c','d','\0','y','z','\0'};
printf("%s",str);
A. abcd
B . abcd yz
30、合法的数组定义是( B )
C 语言 学科练习
得分:
卷一( 60 分)
一、选择题(每题 2 分,共 40 分)
1、以下叙述正确的是:__ B__。
A ) C 语言的源程序不必通过编译就可以直接运行。
2019年湖南省对口高考C语言试题(含答案)
2019年湖南省对口高考计算机C语言试题一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,本大题共3小题,每小题5分,共15分)2019年20. 已知“int w=1,x=2,y=3,z=4;”,则表达式“w>xw:z>yz:x”的值是()A. 1B. 2C. 3D. 42019年21. 若有定义语句“int a[3][5];”,按内存中的数据存放顺序,a数组的第10个元素是()A. a[1][4]B. a[1][3]C. a[2][3]D. a[2][4]2019年22. 已知“int a=1,b=2,c=3,x;”与“x=(a^b)&c;”,则x的值为()A. 0B. 1C. 2D. 3三、综合应用题(每小题20分,每空5分,共20分)2019年30.下面程序功能是统计5个同学成绩(1~100间的整数)中低于平均成绩的人数并输出,请补全以下代码。
#include “”main(){ int i,count=0;①int score[5] ;float ave=;printf(“input 5 scores:\n”);for(i=0;i<5;i++){②scanf("%d",&score[i]) ;ave+=score[i];}③ave/=5for(i=0;i<5;i++)if(④score[i]<ave )count++;printf(“%2d”,count);}四、程序分析题(本大题共3小题,共75分)2019年32. 阅读程序,写出运行结果(每空5分,共25分)(1)下列程序的运行结果是①0,1#include “”main(){ int i =0;do printf(“%d,”,i);while(i++);printf(“%d\n”,i);}(2)下列程序的运行结果是②7#include “”int fun(char *s) {char *t=s;while(*t++);return t-s;}main(){char t[8]=”123456”;printf(“%d\n”,fun(t));}(3)下列程序的运行结果是③56 #include “”int fun(char s[]) {int n=0;while(*s<=’9’&&*s>=’0’){n=10*n+*s-‘0’;s++;}return n;}main() {printf(“%d\n”,fun(“056a0”));}(4)下列程序的运行结果是④f(n)=2#include “”int f(int n) {if(n<=2)return 1;elsereturn f(n-1)+f(n-2);}main() {int n=5;printf(“f(n)=%d\n”,f(3));}(5)下列程序的运行结果是⑤the result is 2#include <>int f(char *s,char *t) {int n=0,num=0; char *p,*r;while(*s){p=s;r=t;while(*r)if(*r==*p){r++;p++;}elsebreak;if(*r==’\0’)num+=1;n++;s++;}return num;}main(){printf(“the result is %d\n”,f(“aabdabc”,”ab”));}2019年33. 程序填空。
湖南省历界对口高考C语言真题(答案)
历界高考C语言真题2007年真题一、程序分析题1、#include <>main( ){ int x=3;?doprintf(“%d”,x-=2);while(!(--x));}2、#include <>main( ){ int x=4,y=8,z;z=x<<2|y;printf(“%d”,z);}$3、#include <>main( ){ char x=’E’,y=’e’;printf(“%c”,x+32);printf(“%c”,(x--,y++));printf(“%c\n”,x==yx+=32:(y-=32));}4、#include <>main( ){ int t=2;-while(t<5)switch(t%2){ case 0: t++;printf(“#”);break;case 1: t+=2;printf(“*”);default:printf(“\n”);}}5、#include <>main( ){ char str1[50]=”Beijing 2008”,*q=str1;.char str2[50]=”One world One Dream!”,*p=str2;while(*p!=’\0’) p++;while(*q!=’\0’) *p++=*q++;*p=’\0’;printf(“%s”,str2);}6 #include <>#include<>\main( ){ char s[]=”abcdefg”,t;while(i<j){ t=s[i],s[i]=s[j],a[j]=t;i++,j--;}puts(s);}二、程序填空题1、下面程序的功能是求1000以内的完数。
完数是指一个数的子因子之和等于这个数本身。
(#include<>main( ){ int i,j,sum;for(i=1; i<1000 ;i++){ sum=0;for(j=1;j<i;j++)if(i%j==0)sum+=j;if( sum==i ) printf(“%d\n”,i);}~}2、以下程序是统计一维数组arr中小于平均值的元素个数。
C语言程序写结果精练20题
1.写出程序的运行结果#include <stdio.h>main(){ int a=1,b=2;printf("%d,%d\n",(a,b),(b,a));printf("%d,%d\n",a,b,b,a); } 输出结果为:2.写出程序的运行结果#include <stdio.h>main(){ int a=1,b=0;printf("%d,",b=a+b);printf("%d\n",a=2*b); }输出结果为:3.写出程序的运行结果#include <stdio.h>#define f(x) (x*x)main(){ int i1,i2;i1=f(8)/f(4); i2=f(4+4)/f(2+2);printf("%d,%d\n",i1,i2); }输出结果为:4.写出程序的运行结果#include <stdio.h>main(){ int a,b,c;a=10;b=20;c=30;a=(--b<=a)||(a+b!=c);printf("%d,%d\n",a,b); }输出结果为:5.写出程序的运行结果#include <stdio.h>main(){ int a=1,b=2,c=3,d=0;if(a==1)if(b!=2)if(c==3) d=1;else d=2;else if(c!=3) d=3;else d=4;else d=5;printf("%d\n",d);}输出结果为:6.写出程序的运行结果#include <stdio.h>main(){ int a=1,b=2,c=3;if(a++>b)if(b<c) printf("%d",b);else printf("%d",c);printf("%d\n",++a); }输出结果为:7.写出程序的运行结果#include <stdio.h>main(){ int color=2;switch(color){ case 1:printf("red\n");break;case 2:printf("yellow\n");case 3:printf("blue\n");}}输出结果为:8.写出程序的运行结果#include <stdio.h>main(){ int n=2,k=0;while(k++&&n++>2) n+=k;printf("%d,%d\n",k,n); }输出结果为:9.写出程序的运行结果#include <stdio.h>void echonum(int i,int j){ int t;t=i;i=j;j=t;printf("i=%d,j=%d\n",i,j);}main(){ int i=1,j=2;echonum(i,j);printf("i=%d,j=%d\n",i,j);}输出结果为:10.写出程序的运行结果#include <stdio.h>int f(int n){ static int a=1;n+=a++;return n;}main(){ int a=3,s;s=f(a);s=s+f(a);printf("%d\n",s);}输出结果为:11.写出程序的运行结果#include <stdio.h>int fun(int n){ static int x=1;x+=n;return x; }main(){ int a=3;printf("%d\n",fun(a)+fun(a));}输出结果为:12.写出程序的运行结果#include <stdio.h>main(){ char *pa,a[20]="Beijing2008";for(pa=a+7;*pa!='\0';pa++)putchar(*pa); }输出结果为:13.写出程序的运行结果#include <stdio.h>main(){ int k;char a[]="LANGUAGE",b[]="PROGRAM";char *p=a,*q=b;for(k=0;k<=5;k++)if(*(p+k)==*(q+k))printf("%c",*(q+k)); }输出结果为:14.写出程序的运行结果#include <stdio.h>int f(int x){ return 2*x; }main(){ int n=1,m;m=f(f(f(n)));printf("%d\n",m); }输出结果为:15.写出程序的运行结果#include <stdio.h>int f(int n){ if(n==1) return 1;else return n*n-f(n-1); }main(){ printf("%d\n",f(5)); }输出结果为:16.写出程序的运行结果#include <stdio.h>main(){ int m=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf("%d,%d,%d,%d\n",m,n,*p,*q);} 输出结果为:17.写出程序的运行结果#include <stdio.h>void fun(int b0,int b1){ int t;t=b0;b0=b1;b1=t; }main(){ int a[]={1,2};fun(a[0],a[1]);printf("%d,%d\n",a[0],a[1]); }输出结果为:18.写出程序的运行结果#include <stdio.h>void fun(int b[]){ int t;t=b[0];b[0]=b[1];b[1]=t; }main(){ int a[]={1,2};fun(a);printf("%d,%d\n",a[0],a[1]); }输出结果为:19.写出程序的运行结果#include <stdio.h>main(){ int a[5]={1,2,3,4,5};int b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]];printf("%d\n", s); }输出结果为:20.写出程序的运行结果#include <stdio.h>main(){ int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};printf("%d\n",a[1][0]+b[0][1]);printf("%d\n",a[0][1]+b[1][0]); } 输出结果为:。
对口单招c语言试题及答案
对口单招c语言试题及答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个类?A. structB. classC. enumD. union答案:B2. C语言中,哪个函数用于将浮点数转换为字符串?A. sprintfB. scanfC. printfD. fprintf答案:A3. 下列哪个选项不是C语言标准库函数?A. mallocB. freeC. strcpyD. rand答案:D4. 在C语言中,以下哪个操作符用于计算两个整数的乘积?A. *B. /C. %D.++答案:A5. C语言中,以下哪个关键字用于定义一个函数?A. funB. defineC. functionD. void答案:D二、填空题6. C语言中,用于定义一个结构体的关键字是______。
答案:struct7. 当需要在C语言中包含标准输入输出库时,需要在程序文件顶部包含的头文件是______。
答案:stdio.h8. 在C语言中,用于动态分配内存的函数是______。
答案:malloc9. C语言中,用于字符串连接的函数是______。
答案:strcat10. 在C语言中,表示逻辑与的操作符是______。
答案:&&三、简答题11. 请简述C语言中指针的概念及其用途。
答案:指针是一种变量,其存储的是另一个变量的内存地址。
在C 语言中,指针可以用来直接访问内存,提高程序的运行效率,实现动态内存分配,以及方便地处理数组和字符串等数据结构。
12. 解释C语言中的“堆”和“栈”的区别。
答案:栈是用于存储局部变量和函数调用的内存区域,由编译器自动管理,具有后进先出的特性。
堆是用于动态内存分配的内存区域,由程序员手动管理,可以申请任意大小的内存块,具有任意的访问顺序。
四、编程题13. 编写一个C语言程序,实现两个整数的交换。
```c#include <stdio.h>void swap(int *x, int *y) {int temp = *x;*x = *y;*y = temp;}int main() {int a, b;printf("Enter two numbers: ");scanf("%d %d", &a, &b);printf("Before swap: a = %d, b = %d\n", a, b);swap(&a, &b);printf("After swap: a = %d, b = %d\n", a, b);return 0;}```14. 请编写一个C语言程序,用于计算一个字符串的长度。
湖南对口升学试题:c语言期中考试练习题(高教版).doc
衡山县职业中专对口C语言期中考试(2016\10\27)班级:________ 姓名:_________ 成绩:得分评卷人一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将正确答案的号码填入题后括号中。
每小题5分)(1)以下选项中不能用作C程序合法常量的是A)1,234B)'\123'C)123D)"\x7G"(2)以下选项中可用作C程序合法实数的是A) .1e0B) 3.0e0.2C) E9D) 9.12E(3)若有定义语句:int a=3,b=2,c=1;,以下选项中错误的赋值表达式是A)a=(b=4)=3;B)a=b=c+1;C)a=(b=4)+c;D)a=1+(b=c=4);A)_1B)AaBc C)a_b D)a—b(4)若有定义:double a=12;int i=58,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(5) 有以下程序#includeVoid fun(char *C){ while(*C){if(*c>='a'&&*c<='z') *c=*c-('a'-'A');c++;}}main(){ char s[81];gets(s);fun(s);puts(s);}当执行程序时从键盘上输入HelloBeijing<回车>,则程序的输出结果是A)hello beijingB)Hello BeijingC)HELLO BEIJINGD)hELLO Beijing(6)有以下程序main(){ chara[30],b[30];scanf("%s",a);gets(b);printf("%s\n %s\n",a,b);}程序运行时若输入:how areyou? I am fine<回车>则输出结果是A)how areyou? B)howI am fine are you? I am fineC)how areyou? I am fineD)how are you?(7)有以下程序#include(stdio.h)main(){int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]]);printf("%d\n", s);}程序运行后的输出结果是A)6B)10C)11D)15(8)若有以下定义和语句char s1[10]="abcd!",*s2="\n123\\";printf("%d %d\n", strlen(s1),strlen(s2));则输出结果是A)5 5B)10 5C)10 7D)5 8(9)设有定义:struct complex{ int real,unreal;} data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(10)有以下程序#include#includestruct A{ int a; char b[10]; double c;};void f(struct A t);main(){ struct A a={1001,"ZhangDa",1098.0};f(a);printf("%d,%s,%6.1f\n",a.a,a.b,a.c);}void f(struct A t){ t.a=1002; strcpy(t.b,"ChangRong");t.c=1202.0;}程序运行后的输出结果是A)1001,zhangDa,1098.0B)1002,changRong,1202.0C)1001,ehangRong,1098.OD)1002,ZhangDa,1202.0(11) fread(buf , 64,2,fp)的功能是:( )A)从fp所指向的文件中,读出整数64,并存放在buf中;B)从fp所指向的文件中,读出整数64和2,并存放在buf中;C)从fp所指向的文件中,读出64个字节的字符,读两次,并存放在buf地址中;D)从fp所指向的文件中,读出64个字节的字符,并存放在buf中;(12)以下程序的功能是( ) 。
计算机C语言运行结果题型练习
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
2008年春习题4【程序】#include <stdio.h>main(){ int op1, op2, res;char operator;scanf("%d", &op1);operator = getchar();while(operator != '='){scanf("%d", &op2);switch(operator){case '+': res = op1+op2; break;case '-': res = op1-op2; break;case '*': res = op1*op2; break;case '/': res = op1/op2; break;default: res = 0;}op1 = res; operator = getchar(); }printf("%d\n", res); }(13) 程序运行时,输入2*3-2=,输出(13) 。
A、6B、2C、0D、4(14) 程序运行时,输入15+2/3=,输出(14) 。
A、16B、15C、6D、5(15) 程序运行时,输入1+2*10-10/2=,输出(15) 。
A、10B、16C、15D、25(16) 程序运行时,输入1+3*5/2-7=,输出(16) 。
A、3B、1C、-2D、-3习题5【程序】#include <stdio.h>#define MAXLEN 80main( ){ int k = 0, number = 0;char str[MAXLEN];while((str[k] = getchar()) != '#') k++;str[k] = '\0';for (k=0; str[k] != '\0'; k++)if (str[k]>='0' && str[k]<='9' || str[k]=='A' || str[k]=='B')if(str[k] >= '0'&&str[k] <= '9') number = number * 12 + str[k] - '0';else if(str[k] == 'A'||str[k] == 'B') number = number * 12 + str[k] -'A' + 10;else; /* 第15行*/else break; /* 第16行*/printf("%d\n",number); }(17) 程序运行时,输入10#,输出(17) 。
湖南省对口升学C语言第二次测试题(1-2章)
一、填空题(每题1 分,共10分)1、C语言中,字符型数据在内存中以形式存放。
2、C语言规定,main函数的位置。
3、C语言规定,可执行程序的开始执行点是。
4、如果int x=1,y=2,表达式y=1.0+x/y后y的值是。
5、C程序是由函数组成,其中只能有一个主函数函数。
6、在一个C语言程序中,注释部分两侧的分界符分别为、。
7、如果int m=5,y=2;表达式y+=y-=m*=y后y的值是。
8、C语言程序中的语句都是用结束。
9、设int x=1, y=1; 表达式(!x||y--)的值是。
10、设x=2.5,a=7,y=4, 则表达式x+a%3+(int)(x+y)的值是。
二、选择题(每题2分,共60分)1.以下程序的输出结果是A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}2.语句:printf("%d \n",12 &012);的输出结果是A) 12 B) 8 C) 6 D) 0123.设x,y,z,t均为int型变量,则执行以下语句后,t的值为x=y=z=1;t=++x||++y&&++z;A)不定值B)2 C)1 D)04.设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值:scanf("i=%d,f=%f",&i,&f);为了把100和765.12分别赋给i和f,则正确的输入为( )A)100<空格>765.12<回车> B)i=100,f=765.12<回车>C)100<回车>765.12<回车> D)x=100<回车>,y=765.12<回车5.以下程序的输出结果是( )A) 17,021,0x11 B) 17,17,17B) 17,0x11,021 D) 17,21,11main( ){ int k=17;printf("%d,%o,%x \n",k,k,k);}6.若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值7.设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相符的是()A)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2D)h/2*(a+b)8.假定a和b为int型变量,则执行以下语句后b的值为a=1;b=10;do{b-=a;a++;}while(b--<0);A)9 B)—2 C)—1 D)89.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是A) c=b=a;B) (a=c) ‖(b=c) ;C) (a=c) &&(b=c);C) a=c=b;10.一下关于switch语句和break语句的描述中,正确的是()A)在switch语句中,必须使用break语句B)break语句只能用于switch语句C)在switch语句中,可以根据需要使用或不使用break语句。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序写结果专题训练(一)(认真分析下列各题的结果,并总结各种题型的分析方法与思路及注意的地方)1、写出下面程序的执行结果#include <stdio.h>main( ){ int a=0,b=10,x=0,c=3;x=(b=1,a=--b);if(b=x)c=a;a=x;x=c;printf(“x=%d,a=%d,b=%d”,x,a,b);}2、写出下面程序的执行结果main( ){int x=4;if(x++>5) printf(“%d\n”,++x);else printf(“%d\n”,--x);}3.写出下面程序的执行结果#include <stdio.h>main(){ char s[]="press a key.";int i;char ch;for (i=0;(ch=s[i])!='\0';i++){ switch (ch++){ case 'p': case 'a':case 'k':putchar(ch-32);continue;case ' ':putchar('*');break;case '.':putchar('!');break;default :putchar(ch);continue;}putchar('\n');}}4.写出下面程序的执行结果#include <stdio.h>main(){ int a=2,b=4,c=5;switch (a>0){ case 1:switch (b=b>>2){ case 1:printf("@");case 0:printf("!");default:printf("?");}case 0:swith (c==5){ case 0:printf("*");break;case 1:printf("#");break;dafault:printf("$");}default:printf("&");}printf("\n");}5.阅读下列程序,输入数据:20,4 程序运行的结果。
#include <stdio.h>void main(){ int s=1,t=1,a,n,i;scanf(“%o,%x”,&a,&n);for(i=1;i<n;i++){ t=t*10+i;s=s+t;}s*=a;printf(“SUM=%d\n”,s);}6、以下程序的运行结果是#include <stdio.h>main(){ int i,j,k;for(i=1;i<4;i++){for(j=1;j<4-i;j++)printf(" ");for(k=1;k<=2*i-1;k++)printf("%c",'A'+i-1);printf("\n");} }7、以下程序的运行结果是#define N 6main( ){ int a[N][N],i, j ;for( i=0;i<N;i++){ a[i][0] =1; a[i][i] =1; }for( i=2; i<N; i++ )for(j=1; j<i ; j++ )a[i][j] =a[i-1][j-1] + a[i-1][j];for(i=0; i<N; i++){ for( j=1; j<=i; j++)printf(“%5d”,a[i][j]);printf(“\n”);}}8、以下程序运行后,如果从键盘上输入ABCdDABCDE<回车>,则输出结果为#include<string.h>int func(char str[] ){int num =0;while(*str&&*str!=’D’){ num++;str++;}return(num);}main( ){ char str[10],*p=str;gets(p);printf("%d\n",func(p+5));}9.执行下述程序时的输出结果是_________。
#include <stdio.h>main(){int a[]={2,4,6,8,3,6,7},*ptr=&a[0],x=8,y,z;for (y=0;y<3;y++)z=(*(ptr+y)<x)?*(ptr+y):x;printf("%d\n",z);}10.执行下述程序的输出结果是。
#include <stdio.h>main(){ int a[][2]={10,20,30,40,50,60,70,80,90};int (*p)[2],*q;p=a;p++;q=*p; *q++;(*q)++;printf("%d,%d\n",*(*(p+2)+1),*q);}11.执行下述程序的输出结果是__________。
#include <string.h>#include <stdio.h>struct str{ float x;char *y;} group[3]={ 95.0,"Li", 82.5,"Wang", 73.5,"Sun" },*m;main(){ int i;float s=0;char str[90];m=grogp;for(i=2;i%3>=0;i--){s+=m->x;strcat(str,m->y);m++;}printf("%.lf,%s\n",s,str);}12.有以下程序#include <stdio.h>#include <stdlib.h>main(int argc,char *argv[]){ FILE *fp1,*fp2;if (argc<3) exit(0);fp1=fopen(argv[1],"r");fp2=fopen(argv[2],"w");while (!feof(fp1)){ fputc (fgetc(fp1),fp2);printf(fgetc(fp1));}fclose(fp1);fclose(fp2);}若在DOS提示符下输入如下的命令行file abc.c xyz.c且程序正常执行完毕。
那么,该程序所实现的功能是。
13.阅读程序,写出执行该程序的输出结果main(){ int m[5],n[5],*px,*py,ki;px=n;py=m;for (k=1;k<4;k++,px++,py++){ *px=k;*py=2*k;printf("%d,%d",m[k-1],n[k-1]); }printf("\n");px=&m[1]; py=&n[1];for (k=1;k<3;k++){ *px+=k;*py*=k;printf("%d,%d,",*px--,*py--);}}14.阅读程序,写出执行该程序的输出结果。
#include <stdio.h>int x=0,i=0;int f(int y);main(){int s=2,x;for (x=1;x<=3;++x)s+= f(x);printf(“s=%d,x=%d,i=%d”,s,x,i); }int f(int y){ static int i=5;int j=3;{ int i=9;i=x+j+i;x=i+j; }i=i+j+y;j=i%y;return y=i*j;}15.写出程序运行的输出结果。
main(){ char a[20]={”1A2b3C4d5F”},b[20]; char *p1=a,*p2=b;do{if (!((*p1>='0' &&*p1<='9')){*p2=*p1; p2++; p1++ }elsep1++;} while(*p1=='\0');*p2=*p1;printf(” % s\n”, b);}16. 阅读下列程序,写出程序运行的输出结果。
void main( ){ int k=0;char c=’B’;do {switch (c++){case ‘A’: k++; break;case ‘B’: k--;case ‘C’: k+=3; break;case ‘D’: k=k%2; break;case ‘E’: k=k^10; break;default: k=k/3;}k++;} while(c<’F’);printf(“k=%d\n”, k);}。