《编程基础》复习题.docx

上传人:b****2 文档编号:17778940 上传时间:2023-08-03 格式:DOCX 页数:14 大小:42.88KB
下载 相关 举报
《编程基础》复习题.docx_第1页
第1页 / 共14页
《编程基础》复习题.docx_第2页
第2页 / 共14页
《编程基础》复习题.docx_第3页
第3页 / 共14页
《编程基础》复习题.docx_第4页
第4页 / 共14页
《编程基础》复习题.docx_第5页
第5页 / 共14页
《编程基础》复习题.docx_第6页
第6页 / 共14页
《编程基础》复习题.docx_第7页
第7页 / 共14页
《编程基础》复习题.docx_第8页
第8页 / 共14页
《编程基础》复习题.docx_第9页
第9页 / 共14页
《编程基础》复习题.docx_第10页
第10页 / 共14页
《编程基础》复习题.docx_第11页
第11页 / 共14页
《编程基础》复习题.docx_第12页
第12页 / 共14页
《编程基础》复习题.docx_第13页
第13页 / 共14页
《编程基础》复习题.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《编程基础》复习题.docx

《《编程基础》复习题.docx》由会员分享,可在线阅读,更多相关《《编程基础》复习题.docx(14页珍藏版)》请在冰点文库上搜索。

《编程基础》复习题.docx

《编程基础》复习题

一、填空

1、表达式3*7%2+7%2*5的值为6。

2、若定义了intx;则将x强制转化成双精度类型应该写成(double)x。

3、设y是int型变量,请写出判断y为奇数的关系表达式[(y%2)==1或y%2或(y%2)!

=0]

5、在C语言中,实现循环的语句有:

if-goto语句、while语句、do-while语句和for语句。

6、设有定义:

intn,*k=&n;以下语句将利用指针变量k读写变量n中的内容,请将语句补充完整。

scanf(“%d”,k);

printf(“%d\n”,*k);

7、一个C语言程序总是从主函数开始执行。

8、若输入字符串:

abcde<回车>,则以下while循环体将执行1次。

do{printf(“Hello!

”);}

while((ch=getchar())==‘y’);

9、已知:

int*p,a;则语句“p=&a;”中的运算符“&”的含义是取变量地址。

11、函数直接或者间接地自己调用自己,被称为函数的递归调用。

12、若已定义:

inta[10],i;,以下fun函数的功能是:

在循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10。

请填空。

fun(inta[])

{inti;

for(i=1;i<=10;i++)a[i-1]=i;

}

14、’x’(字符)在内存中占1个字节,”x”在内存中占2个字节(字符串本身就包含了\0)。

15、数组在内存中占连续一片的存储区,用数组名代表其首地址。

16、C语言是一种结构化程序设计语言,而结构化程序设计的基本结构有3种,分别是顺序结构、选择结构和循环结构。

22、表达式8.0*(1/2)的值为0.0。

33、用指针变量作为实参、形参,实现两个数的值互换,请填空。

voidswap(int*p1,int*p2)

{intp;

p=*p1;

*p1=*p2;

*p2=p;}

main()

{inta=10,b=25;

swap(&a,&b);

printf(“\na=%d,b=%d”,a,b);}

38、C语言规定,标识符只能由数字、字母、下划线3种字符组成,而且第一个字符必须是字母或下划线组成。

42.已知intx=5,y=5,z=5;执行语句x%=y+z;后,x的值是__5__。

43、假设a是字符型变量,写出从键盘上输入一个字符并且赋值给a的语句:

a=getchar()或scanf(“%c”,&a);

48、C语言认为零为逻辑"假",非零为逻辑"真"。

51、定义了数组inta[3],若想使指针p指向数组a,则定义语句为

__int*p=a;______。

52、C语言的数据类型中,构造类型共有三种,其中__数组_____是同一类型的数据项占连续存储空间,_结构体_____是若干不同类型的数据项占连续存储空间。

53、从编写好一个C程序到完全运行,一般要经历四步,分别为编辑、

__编译______、连接和执行。

57、设有以下变量定义,并已赋确定的值

charw;intx;floaty;doublez;

则表达式:

w*x+z-y所求得的数据类型为double。

64、一个C程序由若干个函数组成,其中必须有一个___main()___函数。

65、TC2.0中inta=-1,a在内存中的存储形式是16个1

66、已知大写字母C的ASCII码是67,则chara=’C';语句执行后内存中存储的二进制码是01000011。

67、整型常量和实型常量也称为数值常量,它们有正负值之分。

68、C语言基本数据类型包括整型、字符型、枚举类型和实型。

69、在C语言中,将字符串作为字符数组处理。

71、由一次函数调用加一个分号构成一个函数调用语句语句。

72、如果想输出字符“%”,则应该在”格式控制”字符串中用%表示。

三、读程序,写出其结果

1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。

main()

{charch;

ch=getchar();

if(ch>=’a’&&ch<=’z’||ch>=’A’&&ch<=’Z’)

printf("ItisanEnglishcharacter\n");

elseif(ch>=’0’&&ch<=’9’)

printf("Itisadigitcharacter\n");

elseif(ch==‘’)

printf("Itisaspacecharacter\n");

else

printf("Itisothercharacter\n");}

2.10个学生成绩按选择法排序

main()

{floata[10],t;

inti,j,k;

printf("Pleaseenterscore:

\n");

for(i=0;i<10;i++)

scanf(“%f”,&a[i]);

for(i=0;i<9;i++)

{k=i;

for(j=i+1;j<10;j++)

if(a[j]>a[k])

k=j;

if(i!

=k)

{t=a[i];

a[i]=a[k];

a[k]=t;

}

}

printf("Sortedresults:

\n");

for(i=0;i<10;i++)

printf("%4.1f\n",a[i]);

}

3.3自定义一函数求n!

编写程序输入n,输出n!

.

longjc(intn)

{inti

longp=1;

while(i<=n)

{p=p*i;

i++;}

returnp;}

voidmain()

{intn;

printf("Pleaseentern:

");

scanf("%d",&n);

printf("%d!

=%ld\n",n,jc(n));}

4.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。

用输入0来结束输入,用i,j来放统计数,请填空完成程序。

  voidmain()

{intn,i=0,j=0;

printf(“inputainteger,0forend\n”);

scanf(“%d”,&n);

while(n或n!

=0)

{if(n>0)i=i+1;

elsej=j+1;

}

printf(“i=%4d,j=%4d\n”,i,j);

}

5.下面程序的功能是在a数组中查找与x值相同的元素所在位置,请填空。

  #include

voidmain()

{inta[10],i,x;

printf(“input10integers:

”);

   for(i=0;i<10;i++)

scanf(“%d”,&a[i]);

printf(“inputthenumberyouwanttofindx:

”); 

scanf(“%d”,&x);

for(i=0;i<10;i++)

if(x==a[i])

break;

if(i<10)

printf(“theposofxis:

%d\n”,i);

elseprintf(“cannotfindx!

\n”);

}

8.下面是判断一个数是否为素数的函数

/*函数功能:

判断参数是否是素数

函数入口参数:

整型数,要求为正整数

函数返回值:

非0值表示是素数,否则不是素数*/

#include

intIsPrime(intnumber)

{inti;

if(number<=1)/*负数、0和1都不是素数*/

return0;

for(i=2;i

if(number%i==0)/*被整除,不是素数*/

return0;

return1;

}

9.编程计算1+3+5+……+101的值

#include

voidmain()

{inti,sum=0;

for(i=1;i<=101;i+=2)

sum=sum+i;

printf("sum=%d\n",sum);

}

10.输入一个学生的成绩(在0~100分之间),进行五级评分并显示。

#include

voidmain()

  { intscore;

  scanf("%d",&score);

  if(score>=0&&score<=100)

  switch(___score/10___)

  {

  case10:

  case9:

printf("Excellent\n");break;

  case8:

printf("Good\n");break;

  case7:

printf("Middle\n");break;

  case6:

printf("Pass\n");__break____;

  default:

printf("Nopass\n");}

}

 

11.排序函数:

用交换法按成绩由高到低对学生成绩重新排序

函数参数:

实型数组score,存储学生成绩

整型变量n,代表数组元素个数

函数返回值:

voidSort(floatscore[],intn)

{inti,j;

floattemp1;

for(i=0;i

{for(j=i+1;j

if(score[j]>score[i])

{temp1=score[j];

score[j]=score[i];

score[i]=temp1;

}

}

}

12.编程计算1+3+5…+99的值

main()

{inti,sum=0;

i=1;

while(i<100)

{sum=sum+i;

i+=2;}

printf("sum=%d\n",sum);

}

15.从键盘输入一个字符,判断它是否是英文字母。

#include

voidmain()

{charc;

printf("inputacharacter:

");

c=getchar();

if(c>=‘A’&&c<=‘Z’||c>=‘a’&&c<=‘z’)

printf("Yes\n");

else

printf("No");

}

16.以下使用数组来处理打印斐波那契数列的前20项的程序。

打印时,每行打印10个数字。

斐波那契数列的格式为:

当n=0时,f[0]=0,当n=1时,f[1]=1,当n>1时,f[n]=f[n-1]+f[n-2]

#include“stdio.h”

voidmain()

{intfbn[20];

intline=0,j;

fbnq[0]=0;

fbnq[1]=1;

for(j=2;j<20;j++)

fbnq[j]=fbnq[j-1]+fbnq[j-2];

for(j=0;j<20;j++)

{printf(“%d”,fbnq[j]);

line++;

if(line==10)

{line=0;

printf(“\n”);

}

}

19.程序读入20个整数,统计非负数个数,并计算非负数之和。

#include

main()

{inti,a[20],s,count;

s=count=0;

for(i=0;i<20;i++)

scanf(“%d”,&a[i]);

for(i=0;i<20;i++)

{if(a[i]<0)continue;

s+=a[i];

count++;

}

printf(“s=%d\tcount=%d\n”,s,count”);

}

四、程序编写

1.题目:

输入三个整数x,y,z,请把这三个数由大到小输出。

2.题目:

打印出如下图案(菱形)

*

***

******

********

3.题目:

有一分数序列:

2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前10项之和。

4.题目:

编写不使用strcat命令实现两个字符串连接程序

5、题目:

输出杨辉三角形(要求输出15行)。

1

11

121

1331

14641

15101051

……

6、题目:

用二分法求一元方程的近似解。

7、题目:

有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?

都是多少?

8、题目:

一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

9、题目:

输入某年某月某日,判断这一天是这一年的第几天?

10、题目:

打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

例如:

153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

11、题目:

从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。

输入的字符串以!

结束。

12、题目:

有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。

13、题目:

有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。

14、题目:

求0—7所能组成的奇数个数。

15、题目:

输入三个整数x,y,z,请把这三个数由大到小输出。

16、题目:

打印出如下图案(菱形)

*

***

******

********

******

***

*

17、题目:

给一个不多于5位的正整数,要求:

一、求它是几位数,二、逆序打印出各位数字。

18、题目:

利用递归方法求5!

五、算法和程序

看NS图编写C程序

如:

题目:

既是完全平方数,又有两位数字相同的三位正整数,如144

#include

inttemp_int[100];

intmain()

{

inti;

intk;

intj=-1;

intgewei;

intshiwei;

intbaiwei;

for(i=10;i<32;i++)

{

temp_int[++j]=i*i;

}

for(k=0;k<=j;k++)

{

baiwei=(int)(temp_int[k]/100);

shiwei=(int)((temp_int[k]-100*baiwei)/10);

gewei=temp_int[k]-100*baiwei-10*shiwei;

if(baiwei==shiwei||baiwei==gewei||shiwei==gewei)

{

printf("%d\n",temp_int[k]);

}

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2