您的位置 首页 > 雕刻工具

c语言程序设计?C语言程序设计

各位老铁们,大家好,今天由我来为大家分享c语言程序设计,以及C语言程序设计的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

一、填空题(每空1分,共10分)1.C语言的数据类型中,构造类型包括:数组、和。2.在C程序中,指针变量能够赋值或值。3.C目标程序经后生成扩展名为exe的可执行程序文件。4.设有定义语句staticchars[5」;则s[4]的值是。5.设x为int型变量。与逻辑表达式!x等价的关系表达式是。6.若一全局变量只允许本程序文件中的函数使用,则该变量需要使用的存储类别是。7.磁盘文件按文件读写方式分类可以为顺序存取文件和。8.设有下列结构体变量xx的定义,则表达式sizeof(xx)的值是_________。struct{longnum;charname[20];union{floaty;shortz;}yz;}xx;二、单项选择题(每小题1.5分,共30分)

1.设有定义intx=8,y,z;则执行y=z=x++,x=y==z;语句后,变量x值是()A、0B、1C、8D、92.有以下程序main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\\n",i,j,k);}执行后输出结果是()A、1,1,2B、2,2,1C、2,2,2D、2,2,33.已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是()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);4.有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\\n",d);elseif((c-1>=d)==1)printf("%d\\n",d+1);elseprintf("%d\\n",d+2);}执行后输出结果是()A、2B、3C、4D、编译时有错,无结果5.以下程序段()x=1;do{x=x*x;}while(!x);A、是死循环B、循环执行二次C、循环执行一次D、有语法错误6.以下不能正确定义二维数组的选项是()A、inta[2][2]={{1},{2}};B、inta[][2]={1,2,3,4};C、inta[2][2]={{1},2,3};D、inta[2][]={{1,2},{3,4}};7.有以下程序main(){intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i<4;i++)s+=aa[i][1];printf(“%d\\n”,s);}程序运行后的输出结果是()A、11B、19C、13D、208.以下程序的输出结果是()main(){charch[3][5]={"AAAA","BBB","CC"};printf("\\"%s\\"\\n",ch[1]);}A、"AAAA"B、"BBB"C、"BBBCC"D、"CC"9.有以下程序#definef(x)x*xmain(){inti;i=f(4+4)/f(2+2);printf(“%d\\n”,i);}执行后输出结果是()A、28B、22C、16D、410.决定C语言中函数返回值类型的是()。A、return语句中的表达式类型B、调用该函数的主调函数类型C、调用函数时临时指定的类型D、定义函数时在函数首部中所指定的类型(若缺省,则隐含为int型)。11.系统对预处理命令(如宏替换、文件包含、条件编译)的处理时机是()。A、编译源程序B、编译源程序之前C、连接目标文件时D、运行程序时12.在位运算中,操作数每左移一位,其结果相当于()

A、操作数乘以2C、操作数除以2B、操作数除以4D、操作数乘以4

13.下述描述中不正确的是()。A、字符型数组中可以存放字符串B、可以对字符型数组进行整体输入、输出C、可以对整型数组进行整体进行输入、输出D、不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值14.若有以下定义inta[2][3],则对a数组第i行第j列元素的正确引用是()A、*(*(a+i)+j)B、(a+i)[j]C、*(a+i+j)D、*(a+i)+j15.有以下程序voidfun(char*a,char*b){a=b;(*a)++;}main(){charc1='A',c2='a',*p1,*p2;p1=&c1;p2=&c2;fun(p1,p2);printf("%c%c\\n",c1,c2);}程序运行后的输出结果是()

16.已定义以下函数Fun(char*p2,char*p1){while((*p2=*p1)!='\\0'){p1++;p2++;}}函数Fun的功能是()A、将p1所指字符串复制到p2所指内存空间B、将p1所指字符串的地址赋给指针p2C、对p1和p2两个指针所指字符串进行比较D、检查p1和p2两个指针所指字符串中是否有'\\0'17.设有以下结构体类型:structst{charname[8];intnum;floats[4];}student[50];并且结构体数组student中的元素都已有值,若要将这些元素写到硬盘文件fp中,以下不正确的形式是()A、fwrite(student,sizeof(structst),50,fp);B、fwrite(student,50*sizeof(structst),1,fp);C、fwrite(student,25*sizeof(structst),25,fp);D、for(i=0;i<50;i++)fwrite(student+i,sizeof(structst),1,fp);

B、p指向另外的字符串时,字符串的长度不受限制

C、p变量中存放的地址值可以改变

19.当调用函数时,实参是一个数组名,则向函数传送的是()

20.设有变量说明inta=3,b=6;charc;若执行赋值语句c=(a^b)<<2;

A、00011100B、00000111C、00000001D、00010100

三、阅读程序,将运行结果写到各题右侧的空白处(每小题4分,共20分)

printf("%s\\n",str+i);

{case0:printf("%d",i);

case2:printf("%d",i);

default:printf("%d",i);

printf("%d\\n",func(a+func(b)));

{intnum;charname[10];intage;};

{printf("%s\\n",(*p).name);}

structstustudent[3]={{1001,"Sun",25},{1002,"Ling",23},{1003,"Shen",22}};

四、阅读程序或程序段,填空(每小题4分,共20分)

1.下面程序的功能是调用fun函数以删除字符串中指定的字符,请填空。

for(i=0,j=0;s[i]!='\\0';i++)

{charstr[]="abcdefgAbcd",ch;

2.下面程序是按学生姓名查询其排名和平均成绩,查询可连续进行直到键入0时结束,请填空。

stu[]={3,”Tom”,89.3,4,”Mary”,78.2,1,”Jack”,95.1,2,”Jim”,90.6};

{printf("Enteraname:");

{printf("%s,%d,%f\\n",stu[i].name,stu[i].rank,stu[i].score);break;}

if(i>=NUM)printf("Notfound\\n");

3.下面程序是用“顺序查找法”查找数组中的元素,请填空。

{inta[8]={25,57,48,37,12,92,86,33};

{printf("Found!Theindexis:%d\\n",i);break;}

4.下面程序由键盘输入一些字符,逐个把它们送到磁盘文件中,直到输入一个“!”为止,请填空。

printf("Inputnameoffile:\\n");gets(fname);

if((fp=fopen(fname,"w"))==NULL)

{printf("cannotopen\\n");exit(0);}

printf("Enterdata:\\n");

5.下面函数fun的功能是:将在字符串s中下标为奇数位置上的字符,紧随其后重复出现一次,放在一个新串t中,例如:当s中的字符串为:"ABCDEF"时,则t中的字符串应为:"BBDDFF"。

printf("Theresultis:%s\\n",t);

五、编程题(每小题10分,共20分)

1.编一个程序,将输入的一个字符串按反序存放,要求在主函数中输入字符串并输出反序后的字符串,在被调用函数中完成反序存放。例如:输入字符串“abcdefg”,输出“gfedcba”。

2.有一个班5位学生,各学4门课程,查找出有一门以上课程不及格的学生,打印出其全部课程的成绩。

关于c语言程序设计到此分享完毕,希望能帮助到您。

本站涵盖的内容、图片、视频等数据,部分未能与原作者取得联系。若涉及版权问题,请及时通知我们并提供相关证明材料,我们将及时予以删除!谢谢大家的理解与支持!

Copyright © 2023