好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C程序设计期末考试习题库(删节版).pdf

31页
  • 卖家[上传人]:cn****1
  • 文档编号:571086858
  • 上传时间:2024-08-08
  • 文档格式:PDF
  • 文档大小:933.84KB
  • / 31 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 选 择 练 习 题1、C 语言中最简单的数据类型包括〔 B〕 A、整型,实型,逻辑型B、整型,实型,字符型D、整型,实型,逻辑型,字符型D、*C、整型,字符型,逻辑型A、%B、/2、C 语言中,运算对象必须是整型数的运算符是〔A〕 C、%和/3、为表示关系 x<y<z,应使用 C 语言表达式〔 A 〕 A、 〔x<y)&&〔y<z)B、 〔x<y)AND〔y<z)C、 〔x<y<z)D、 〔x<y) &〔y<z)4、C 语言程序的根本单位是〔 C〕 A、程序行B、语句C、函数D、字符5、C 语言的程序一行写不下时,可以〔D〕 A、用逗号换行B、用分号换行C、用回车符换行D、在任意一空格处换行6、下述标识符中, 〔 C〕是合法的用户标识符A、A&BB、voidC、_studentD、ab*标识符由字母,数字和下划线组成且第一个字符必须为字母或下划线7、在 C 语言中,字符型数据在存中以〔B〕形式存放A、补码B、ASCII 码C、反码D、原码8、 一个程序由假设干文件组成, 共用同一变量, 那么此变量的存储类别应该为 〔 B〕 A、autoB、extern C、staticD、Registerauto 自动变量9、以下关于 switch 语句和 break 语句的描述中,只有〔B 〕是正确的。

      register 存放器变量A、在 switch 语句中必须使用 break 语句extern 外部变量static 静态变量B、在 switch 语句中,可以根据需要使用或不使用break 语句C、break 语句只能用于 switch 语句中D、break 语句是 switch 语句的一局部10、C 语言规定:调用一个函数时,实参变量和形参变量之间的数据传递是〔B〕 A、地址传递B、值传递C、由实参传给形参,并由形参传回给实参D、由用户指定传递方式11、下述 C 语言转义符中〔 D〕是非法的A、'\b'B、'\037'C、'\0xf' D、'\''12、为了要计算 s=10! 〔10 的阶乘〕 ,那么以下对 s 的定义正确的选项是〔.v.D〕 ..A、int sB、unsigned sC、short sD、long s13、判断变量 ch 中的字符是否为大写字母,最简单的正确表达式是〔 A〕 A、ch>='A'&&ch<='z'B、A<=ch<=ZC、'A'<=ch<='z'D、ch>=A&&ch<=z14、在 C 语言中,能表示无符号长整型常数的是〔D〕 A、OLB、4962710UC、912374uD、2UL15、能正确表示 C 语言的字符常量的是〔 C〕 。

      A、'\0x41'B、''A'' C、'\0' D、''\0''16、C 语言中逻辑表达式的值为〔 A〕 A、0 或 1B、非零值或零值C、true 或 falseD、'true'或'false'17、C 语言提供的根本数据类型关键字是〔 C〕 A、integerB、FLOATC、unsignedD、Double18、假设定义语句:int b[ ]={1,2,3,4,5},*P=b;那么表达式*p++的值是〔A、1B、2C、b[0]的地址 D、b[1]的地址19、在以下选项中,不正确的表达式是〔 C〕 A、a>bB、c--, ++b, a+=1C、a=c+b>n-m=k D、p++20、假设有以下定义:int a[ ]={1,2,3,4,5,6,7} ;char cl='b',c2='2';那么数值不为 2 的表达式是〔 D〕 A、a[1]B、'd'-clC、a['3'-c2]D、c2-025、下述对 C 语言字符数组的描述中错误的选项是〔 C〕 A、字符数组可以存放字符串B、字符数组中的字符串可以整体输入、输出C、可以在赋值语句过赋值运算符"="对字符数组整体赋值D、不可以用关系运算符对字符组中的字符串进展比拟27、以下程序的输出结果是〔 A〕 。

      main〔〕{int i=010, j=10, k=ox10;printf(''%d,%d,%d\n'',i,j,k);}.v.A〕 ..A、8,10,16B、8,10,10C、10,10,10D、10,10,1628、以下程序的输出结果是〔 B〕 include<stdio.h>main〔〕{printf〔''%d\n'',NULL〕 ; }A、不确定的值〔因变量无定义〕B、0C、-1D、129、以下程序的输出结果是〔 B〕 main〔〕{char c1='6',c2='0';printf〔''%d,%d,%d\n'',c1,c2,c1-c2〕 ;}A、因输出格式不合法,输出出错信息B、54,48,6C、6.0,7D、6,0,632、下述对 C 语言字符数组的描述中错误的选项是〔 C〕 A、字符数组可以存放字符串B、字符数组中的字符串可以整体输入、输出C、可以在赋值语句过赋值运算符''=''对字符数组整体赋值D、不可以用关系运算符对字符组中的字符串进展比拟33、Turbo C 中,对于以下程序〔 A〕 main〔〕{int x,y;y=creat(&x);printf(''%d \n'', y);}creat(int a){return a++;}A、编译时会给出错信息B、顺利进展编译、连接、执行;不报任何错误C、顺利通过编译、连接、但不能执行D、顺利通过编译,但连接出错34、设有如下定义:int x=10, y=4,z;.v. ..那么语句:printf(''%d\n'', z=(x%y, x/y));的输出结果是〔 C〕 。

      A、1B、0C、2D、335、下述程序段的输出结果是〔 D〕 main〔〕{int x=10, y=10;printf(''%d, %d\n'', x++, ++y);}A、10,10B、11,11C、11,10D、10,1136、定义如下变量和数组:int j;int x[3][3]={1,2,3,4,5,6,7,8,9};那么下面语句的输出结果是〔 C〕 for(i=0;i<3;i++﹚printf(''%d'', x[i][2-i]);A、159B、147C、357D、36937、 假设要求在 if 后一对圆括号中表示a 不等于 0 的关系, 那么不能正确表示这一关系的表达式为〔C 〕 A、a<>0B、!aC、a=0D、a38、假设 m,y,z 均为 int 型变量,那么执行下面语句后m 值是〔A 〕 m=1;x=2;y=3;z=4;m=〔m<x)"m:x;m=〔m<y)"m:y;m=〔m<z) "m:z;A、1B、2C、3D、439、假设有定义:int a=7;float x=2.5,y=4.7,那么表达式 x+a%3*〔int〕 〔x+y〕%2/4的值是〔 A〕 A、2.500000 B、2.750000C、3.500000D、0.00000040、如下说法不正确的选项是〔 C〕 。

      A、c>a+b 等效于 c>〔a+b〕.v. ..B、假设 a,b 均为真,那么 a||b 为真C、表达式'c'&&'d'的值为 0D、逻辑运算符!比逻辑运算符||的优先级高41、putchar〔〕函数可以向终端输出一个〔 B〕 A、整型变量表达式值B、字符C、字符串D、实型变量值42、表达式 18/4*sqrt〔4.0〕/8 值的数据类型为〔 C〕 A、intB、floatC、doubleD、不确定43、假设已定义 a 为整型变量:a=-2L;printf〔''%d\n'',a〕 ;那么以上语句〔 B〕 A、赋值不合法B、输出值为-2C、输出为不确定值D、输出值为 245、假设 int 类型数据占两个字节,那么以下语句的输出为〔 D〕 intk= -1;printf〔''%d,%u\n'',k,k〕;A、-1,-1B、-1,32767C、-1,32768D、-1,6553546、字母 a 的 ASCII 码十进制值为 97,那么执行以下语句后的输出为〔 C〕 yhgchar a='a';a--;printf〔''%d,%c\n'',a+'2'-'0',a+'3'-'0'〕;A、b,cB、a—运算不合法,故有语法错C、98,cD、格式描述和输出项不匹配,输出无定值47、下面语句中〔 B〕是 C 语言的正确赋值语句。

      A、a=1,b=2B、I++;C、a=b=5D、y=int(x);48、设有以下说明语句structstu{int a;float b;}stutype;那么下面的表达不正确的选项是〔 C〕 v.A 中声明变量并初始化时:int a=1,b=5;但是,只赋值时是不能这样写的,应该写成a=1;b=2;C无分号,不是完整的语句,D 中 x 没有定义,如果是int x=3;int y; y=int(x);这样是对的 ..A、struct 是构造体类型的关键字B、struct stu 是用户定义的构造体类型C、stutype 是用户定义的构造体类型名D、a 和 b 都是构造体成员名49、 能正确表示: 当x的取值围在[1,10]或[100, 110]为真, 否那么为假的表达式是 〔 C〕 A、 〔x>=1〕&&〔x<=10〕&&〔x>=100〕&&〔x<=110〕B、 〔x>=1〕||〔x<=10〕||〔x>=100〕||〔x<=110〕C、 〔x>=1〕&&〔x<=10〕||〔x>=100〕&&〔x<=110〕D、 〔x>=1〕||〔x<=10〕&&〔x>=100〕&&〔x<=110〕50、设 n 为整型变量,那么循环语句for(n=10;n>0;n--)的循环次数为〔 A〕 。

      A、10B、9C、11D、1251、在对文件进展操作时,假设要求文件的位置指针回到文件的开头,那么应当调用的库函数是〔D〕 A、fopen()B、fseek()C、fclose()D、rewind()52、以下哪个数组定义是正确的〔 D〕 A、int a[5.5];B、INT a[10];C、int a[n]; D、int a[3+2];53、一个变量的指针就是〔 A〕 A、变量的地址B、变量的值 C、变量的名称D、变量的类型55、以下正确的说法是〔C〕 A、宏替换是在程序运行时进展的B、函数调用是在程序编译时进展的C、宏替换时,如果实参是表达式,应先求表达式的值,再替换D、函数调用时,如果实参是表达式,应先求表达式的值,再替换56、对于数学式x/2a,下面正确的 C 语言表达式是〔 D〕 A、sqr(x)/2aB、sqr(x)/2*aC、sqrt(x)/(2*a)D、sqrt(x)/2*a57、假设 int 类型数据占 2 字节,那么以下语句的输出为〔 D〕 int k=32768;printf(''%d,%u\n'',k,k);A、-1,65535B、-1,32767C、-1,-1,D、-32768,3276859、下面程序中〔 B 〕有错误。

      1〕*include<stdio.h>2〕main ( )3〕{.v. ..4〕int a[3]={0,0,0};5〕int i;6〕for(i=0;i<3;i++﹚scanf(''%D'',&a[i]);7〕for(i=1;i<3;i++﹚a[0]=a[0]+a[i];8〕printf(''%d\n'',a[0];}A、第 4 行B、第 6 行C、第 7 行D、第 8 行60、下面程序的运行结果〔 C〕 main( ){unsigned a=3,b=10;5printf(''%d\n''a<<2|b>>1=;}A、3B、10C、13D、1461、已定义 x 为 float 型变量x=213.82631;Printf(''%-4.2f\n'',x);那么以上程序〔 A〕 m.nd表示最大场宽m, 小数位为n位, 整数位那么为m-n-1位,够 m 位右对齐m.nf 可以控制输出左对齐A、输出格式描述符的域宽不够,不能输出B、输出为 213.83C、输出为 213.82D、输出为-213.8262、设已定义整型变量 K,那么下面的程序输出为〔 D〕 k=017;s=111;printf〔''%d'',++k〕 ;printf〔''%x\n'',s++〕 ;A、156fB、1670C、1571D、166f63、不能正确表示 a*b/c*d 的 C 语言表达式是〔 C 〕 。

      A、a*b/c*dB、a/(c*d)*bC、a*b/c/d D、a*b/(c*d)64、以下〔C〕表达式不满足;当 x 的值为偶数时值为"真〞,为奇数时值为"假〞A、x%2= =0B、!x%2!=0C、x/2*2-x= =0D、!(x%2)65、设已定义 k 为 int 型变量,那么下面 while 循环执行〔C〕次k=10;while(k=0)k=-1;A、执行 10 次B、无限循环C、一次也不执行D、执行一次.v. ..67、用高级语言编写的程序称之为〔 A〕 A、源程序B、目标程序C、汇编程序D、命令程序69、有以下程序的输出结果为〔 B〕 main( ){char a=0x95,b,c;b=(a&0xf)<<4;c=(a&0xf0)>>4;a=b|c;printf(''%x\n'',a);}A、24B、59C、34D、5670、下述程序段的输出结果是〔 A〕 int a=3;b=4;int c=a^b>>3;printf(''%d'',c)A、3B、4C、5D、673、设 int 型变量在存中占用两个字节存储单元,定义如下构造体:structstudent{charname[10];charsex;intage;struct{intyear;intmonth;intday;}birth;}stul;那么表达式 sizeof(stul)的值是〔〕 。

      A、5B、8C、2D、2675、下述程序段的运行结果是〔B〕 include.v. ..main(){intm=7,n=4;floata=38.4,b=0.4,x;x=m/2+n*a/b+1/2;printf(''%f\n'',x);}A、22B、387.000000C、2776、下面程序的运行结果是〔 C〕 main( ){int cl=2,c2=0;while(!c2--)printf(''%d%d'',cl- -,c2);}A、陷入死循环B、不输出任何容C、输出 2-1 D、输出 2077、下面程序的运行结果是〔B〕 int m=4,n=6;max(int x,int y){int max;max=x>y"x:y;return(max);}main( ){int m=10;printf(''%d\n'',max(m,n));}A、4B、10C、6D、578、下面程序的运行结果是〔 B〕 fun(int p){int k=1;static t=2;.vD、26. ..k=k+1;t=t+1;return(p*k*t);}main( ){int x=4;fun(x);printf(''%d\n'',fun(x));}A、4B、32C、30D、1679、阅读下面的程序:main( ){char ch;scanf(''%c'',&ch);if(ch>='a'&& ch<='z')ch=ch-32;printf(''%c'',ch);}假设输入字符为:e,那么程序运行结果为〔A〕 。

      A、EB、AC、eD、z80、下面程序的运行结果是〔 B〕 main(){static int a[3][3]={{3,2,1},(4,5,6),{-2,9,1}};int i,j,sum=0;for(i=0;i<3;i++)for(j=0;j<3;j++){if(i= =j)sum=sum+a[iJ[j]];}printf(''sum=%d'',sum);}.v. ..A、sum=10B、sum=9C、9D、1084、下述程序的运行结果是〔 A〕 includevoid fun(int x){putchar('0'+(x% 10));fun(x/10);}main( ){printf(''\n'');fun(1234);}A、4321 B、321C、21D、186、设已定义 i 和 k 为 int 类型变量,那么以下 for 循环语句〔 B〕 for(i=0,k=-1;;i++,k++)printf(''* * * *\n'');A、判断循环完毕的条件不合法B、是无限循环C、循环一次也不执行D、循环只执行一次87、以下程序段选择项中,使i 的运行结果为 4 的程序段是〔 D〕 。

      A、int i=0,j=0;B、int i=1,j=70;(i=3,(j++)+i);j=i=((i=3) *2);C、inti=0,j=1;D、inti=1,j=1;(j= =1)"(i=1):(i=3);i+=j+=2;89、阅读以下程序〔最左边是附加的行号〕 1〕*include2〕main()3〕{float s[5];4〕int i,k=0;5〕for(i=0;i<5;i++)6〕scanf(''%d'',s+i);.v. ..7〕for(i=0;i<5;i++)8〕 k=s[i];9〕printf(''\n%f'',(float)k);10〕}此段程序〔 A〕 A、没有错误B、第 4 行错误C、第 6 行错误D、第 9 行错误90、以下程序中有三个是完全一样的功能, 只有〔 B 〕所完成的功能与其他程序不同A、s=0;B、s=0;i=0;i=1;while(i<=100)while(i++<100)s+=i++;s+=i;C、s=0;D、s=0;i=0;i=0;while(i<=100)while(++i<=100)s+=++i;s+=i;92、执行下面的程序后,a 的值为〔D〕 。

      main( ){int a,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3= =1)b+3;continue;}b-=5;}A、7B、8C、D、1093、下面的程序中〔 C〕有错误1〕*include2〕main( )3〕{.v. ..4〕float a[3]={0.0};5〕int i;6〕for(i=0;i<3;i++)7〕scanf(''%D'',&a[i]);8〕for(i=1;i<3;i++)a[0]=a[0]+a[i];9〕printf(''%f\n'',a[0]);}A、第 4 行B、第 6 行C、第 7 行D、第 8 行94、以下程序的输出结果是〔 C〕 includemain( ){int i;for(i=1;i<5;i++){if(i%2)printf(''+'')elsecontinue;printf(''-'')}printf(''$\n'');}A、+-+-+-$B、-+-+-+$C、+-+-$ D、-+-+$95、下述程序段的输出结果是〔 C〕 int x=3;do{printf(''%d'',x-=2);}while(!(--x));A、1B、30C、1-2D、死循环96、定义如下变量:int n=10;那么以下循环的输出结果是〔 A〕 。

      v. ..while(n>7){n--;printf(''%d'',n);}A、1098 B、987C、10987D、9876100、两次运行下面的程序,如果键盘上分别输入6 和 4,那么输出结果是〔 A〕 main( ){int x;scanf(''%d'',&x);int(x++>5)printf(''%d\n'',x--);}A、7 和 5B、6 和 3C、7 和 4D、6 和 4101、运行下段程序的结果是〔 D〕 includemain(){int x;for(x=1;x<=100;x++)if(++x%= =0)if(++x%3= =0)if(++x%5= =0)printf(''%d'',x);}A、31,61,91B、30,60,90C、不输出任何容D、29,59,89102、运行下述程序段后,i 值为 4 的是〔 B〕 A、int i=1,j=0;B、inti=1,j=1;i=j=((i=3)++);i+=i+=2;C、int i= =0,j=0;D、int i=0,j=1;(i=2,i+(j=2));(j= =1)"i+=3:i=2;104、以下程序的输出结果是〔 D〕 。

      v. ..main(){int a=-1,b=4,k;k=(++a,0)&&!(b--<=0);printf(''%d,%d,%d\n'',k,a,b);}A、1,0,4B、1,0,3C、0,0,3D、0,0,4105、以下程序的输出结果是〔 A〕 main( ){intx=3,y=0,z=0;if(x=y+z)printf(''* * * *'');elseprintf(''* * * *'');}A、* * * * B、* * * *C、1D、4106、以下程序的输出结果是〔 A 〕 int m=13;int fun2(intx, inty){intm=3;return(x*y-m);}main(){int a=7,b=5;printf(''%d\n'',fun2(a,b)/m);}A、2B、3C、7D、5112、阅读程序:*includemain( ){int m,n,w;scanf(''%d,%d'',&m,&n);while(n).v. ..{w=m%n;m=n;n=w;}printf(''%d'',m);}如果输入 10,6,那么输出结果是〔 D〕 A、60B、120C、2113、以下程序执行后输出的结果是〔 A〕 。

      includef(int a){int b=0;static c=2;a=c++, b++;return(a+b);}main( ){int a=2,i,k;for(i=0;i<2;i++);k=f(a++);printf(''%d\n'',k);}A、3 B、0C、4D、5115、以下程序的运行结果是〔 B〕 main( ){static int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};inti,j,sum=0;for(i=0;i<3;i++)for(j=0;j<4;j++)if(j>i)sum+=a[i][j];printf(''sum=%d\n'',sum);.vD、10. ..}A、40B、36C、24D、30120、阅读以下程序:main( ){int n[3],i,j,k;for(i=0;i<3;i++)n[i]=0;k=2;for(i=0;i

      A、230B、330C、123D、321123、下述程序段的运行结果是〔 B〕 main( ){static int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};int b[3][2],i,j;for(i=0;i<3;i++){for(j=0;j<3;j++){b[i][j]=a[j][i]+a[i][j];printf(''%5d'',b[i][j]);}printf(''\n'');}}A、247B、2610 C、181410D、182321086101414106410.v.2 ..36181014181062742124、如果程序中有如下的说明和定义:struct s{int x,y;}struct s x,y;那么会发生的情况是〔 A〕 A、编译出错B、能顺利编译和,但不能执行C、程序能顺利通过编译,但是时会出错D、程序能顺利编译, ,执行127、对 C 语言的文件存取方式的论述中,正确的选项是文件〔 C〕 A、只能顺序存取B、只能随机存取〔也称直接存取〕C、可以是顺序存取,也可以是随机存取D、只能从文件的开头存取填空练习题1、有以下定义:int x; float y; 执行 scanf("%3d%f",&x,&y);时,如果输入的数据为:12345 678,那么 x 的值为 123123,y 的值为 这个与 12345 后有没有空格有关,到时候看着办吧〔有空格就是 45.000000〕 。

      2、有定义语句:int x,y,z;,执行 x=(y=4,z=8,z=16) 后,x 的值为 1616 3、计算表达式 b=25/3%3 后,b 的值为 2 24、设有定义语句 int x=1,y=0;,那么表达式 x-->(y+x)"10:12>y++"'A': 'Z'的值是: 6565 5、请写出以下语句的输出结果9 9printf("%d",strlen("\t\"065\xffab\n"));7、C 语言规定:标识符只能由字母字母、数字数字、下划线下划线 三种字符组成8、有定义语句:intx=5,y=1;表达式 x&y==y" x|y:x^y 的值为 5 59、下述程序段的循环次数是0 0 次,输出结果是 y=1,x=0y=1,x=0int x=0,y=0;do{y++;x*=x;.v. ..}while(x>0&&y>5)printf("y=%d,x=%d",y,x);10、假设 m,y,z,均为 int 型变量,那么执行下面语句后m 值是 1 1m=1;x=2;y=3;z=4;m=(m

      int x,y;x=17;y=26;printf("%d",y/=(x%=6));12、以下循环语句执行的循环次数是:无数次 for(a=1,b=1;a<4&&b!=4;a++)//循环体 b 的值不变13、下面程序的输出是includemain(){printf("%d\n",strlen("\nabcc\\\",\\",\041\0xf\t\n"));}14、下述程序段的输出结果是3 3int a=3;b=4;int c=a^b>>3;printf("%d",c);17、下述程序段的输出结果是12450561245056includevoidfun(int*x){printf("%d",++x);}main(){int y=20;fun(&y);.v. ..}20、下述程序段的运行结果是1515 includemain( ){int a[3][3]={1,2,3,4,5,6,7,8,9};int s=0,i;for(i=0;i<3;i++)s+=(*(a+i))[i];printf("%d",s);}21、下述程序的输出结果是1818 。

      includemain(){int x=8,y=9;int k;k=(x++)+(++y);printf("%d",k);}22、下述程序的输出结果是6 6includeint fun(int x){static int a=3;a+=x;return a;}main( ){int k=2,m=1,n;n=fun (k);n=fun (m)printf("%d",n);}.v. ..23、用"冒泡法〞对输入的 10 个字符按由小到大顺序排序,请填空include*include*define n 10main(){int i,j;char str[11];scanf("%s",str);char t;for(j=1;jstr[i+1]){t=str[i];str[i]=str[I+1];str[i+1]=t;}for(i=0;i

      include*include*includemain(){char a[100],t;printr("输入字符串:\n〞);scanf("%s",a);int i,j;for(i=0,j=strlen(a);imain( ){int array[ ][3]={{10,20,30},{28,15.-10},{-50,10,60}};int i,j,row=0,col=0;for(i=0;i<3;i++)for(j=0;j<3;j++)if(array[i][j]>array[row][col]){row=i;col=j;}printf("%d,%d",row,col);}28、求出 1000 以能被 7 或 11 整除,但不能同时被7 和 11 整除的数,存放到数组**中main( ){int i,j=0;int **[1000];for(i=1;i<1000;i++)if(((i%7==0)||(i%11==0))&&(!((i%7==0)&&(i%11==0)))((i%7==0)||(i%11==0))&&(!((i%7==0)&&(i%11==0))))**[j++]=I;printf("%d",j);}29、下面程序的执行结果为:2.0000002.000000 。

      main( ){float x,y;.v. ..x=1/2;y=2;printf("%f\n",x+y);}32、程序的功能是求两个整数的最大公约数,请填空main(){int a=12,b=8,t;while(b>1b>1){t=a%b;a=b;b=t;}printf("%3d",a);}35、求以下算式 1+1/2+1/3+……+1/100 的值,请填空main(){int i;float sum=0;for(i=1;i<101;i++)sum+=1/i=1/i;printf("%f\n",sum);}36、将输入的百分制的分数转换为相应的等级并输出,100~90 分那么为 A;89~80 分那么为 B;79~70 分那么为 C;69~60 分那么为 D;小于 60 分为 E,请填空main( ){int score,i;scanf("%d",&scorer);i=score/10;switch(i){case 10:case 9:printf("A");bresk;.v. ..case 8:printf("B");break;case 7:printf("C");break;case 6:printf("D");break;default:default:printf("E");}}38、下面程序是在两位数中统计所有能被3 整除的数的个数。

      main(){int i,num=0;for(i=10;i<100;i++)if(i%3=0i%3=0)num++;printf("\nThere are%d numbers!",num);}42、以下程序段的输出结果是1 -21 -2 main(){intx=3;do{printf("%3d",x-=2);}while(!(--x));}43、以下程序的输出结果是004004 main(){int a=-1,b=4,k;k=(++a<0)&&!(b--<=0);printf("%d%d%d\n",k,a,b);}44、以下程序执行后输出的结果是4 4includef(int a){int b=0;.v. ..staticc=3;a=c+ +,b++;return(a);}main( ){int a=2,i,k;for(i=0;i<2;i++)k=f(a++);printf("%d\n",k);}46、阅读程序,请写出结果:main( ){intx,y;scanf("%d",&x)y=-1;if(x!=0)if(x>0)y=1;elsey=0;printf("y=%d\n",y);}假设运行该程序,输入值为:5,那么输出结果为:y=1 。

      47、阅读程序,请写出结果:main( ){charc;ints1=0,s2=0;do{swith(c=getchar()){case'a':case'e':case'x':case'o':.v. ..case'u':s1+=1;default:s2+=1;}}while(c!='\n');printf("%d.%d\n",s1,s2);}假设输入数据为:puter,那么输出结果为:3.93.948、阅读程序,请写出结果:main( ){intm,i,k;scanf("%d",&m);for(i=2;i=m)printf("%d\n",m);}假设输入数据为:19,那么输出结果为:1919 49、下述程序的运行结果是43214321 includevoid fun(int x){putchar('0'+(x% 10));fun(x/10);}void main(){printf("\n");fun(1234);}53、求 20 以 3 的倍数和 sum1 及其余数的和 sum2main(){intsum=0,sum2=0,i;.v. ..for(i=1;i<=20;i++)if(i%3=0i%3=0)sum1+=i;elsesum2+=i;printf("%d,%d\n",sum1,sum2);}55、下面函数把两字符串s1 和 s2 连接起来。

      Con(chars1[ ], chars2[ ]){inti=0,j=0;while(s1[i]!='\0')i++;while(s2[j]!='\0's2[j]!='\0')s1[i++]=s2[j++];s1[i]='\0';}57、统计文件 f1.dat 中的字符个数includemain( ){FILE *fp;longnum=0;if((fp=fopen("f1.dat","r")(fp=fopen("f1.dat","r")==NULL){printf("Can’t Open File\n");exit(0);}whilefgetc(fp)!=EOF)num++;printf("%ld\n",num);fclose(fp);}58、下面函数从字符数组 s[ ]中删除字符 cvoid del(chars[ ],char c){int i,j;.v. ..for(i=j=0;s[i]!+'\0';i++)if(s[i]!=c)s[j++]=s[i];s[i]s[i]='\0';}59、下面程序用于统计一行字符串中单词的个数,单词之间用空格分隔Main( ){int i,num=0,word=0;charstr[80];scanf("%s",str);for(i=0;i<80i<80;i++)if(sir[i]==")word=0else if(word==0){word=1;num++;}printf("%d\n",num);}64、下面程序用指针p 输出 p 所指向的数组元素的其后所有元素。

      main(){inta[10]={6,-1,3,2,5,7,6,12,-1,-3};int i,j,*p;p=a+4;for(i=0;j<=5;i++)printf("%d",*p++*p++);}65、以下程序把一个名为f1.dat 的文件拷贝到一个名为f2.dat 的文件中includemain(){charc;FILE *fp1,*fp2.v. ..Fp1=fopen("f1.Doc","r");Fp2=fopen("f2.doc","w");c=fgetc(fp1);while(c!=EOF){fputc(c,fp2);c=fgetc(fp1);}fclose(fp1);fclose(fp2)fclose(fp2);}67、判断某年 year 是否是闰年,假设 year 能被 4 整除 100 整除或能被 400 整除,那么是闰年,否那么不是闰年main(){int year;scanf("%d",&year);if(year%4= =0&&year%100!=0||year%400= =0year%4= =0&&year%100!=0||year%400= =0)printf("%d isaleapyear\n",year);elseprintf("%d isn’t a leapyear\n",year);}68、把键盘输入的一行字符串的小写字母转换成大写字母,其余字符不变,进展输出,直到遇到回车为止。

      include main(){if(c>='a'&&c<='z')c=c-32;putchar(c);}putchar('\n');}69、以下程序的功能是:从键盘上输入假设干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时,完毕输入v. ..main(){float x,amax,amin;scanf("%f",&x);amax=x;amin=x;while(x>0x>0){if(x>amax)amax==x;ifx=20)break;if(b%3==1){b+=3;continue;}b-=5;}}74、以下程序由终端键盘输入一个文件名,然后把终端键盘输入的字符依次存放到该文件中,用*作为完毕输入的标志,请填空includemain(){FILE *fp;char ch,fname[10];printf("Input thename of file\n");gets(fname);.v. ..if((fp=fopen(fname,"w"fopen(fname,"w")==NULL){printf("Cannot open\n");exit(0);}printf("Enter date\n");while((ch= getchar())!='*')fputc( chch,fp);fclose(fp);}.v. 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.