C语言程序设计
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言程序设计相关的知识,希望对你有一定的参考价值。
一、单项选择题(10道小题,共10分)
1、以下错误的描述是()(1分)
A、break语句不能用于循环语句和switch语句外的任何其它语句 B、在switch语句中使用break语句或continue语句的作用相同
C、在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环 D、在循环语句中使用break语句是为了跳出循环体,提前结束循环
2、在以下关于C语言的叙述中,正确的说法是():(1分)
A、C语言比汇编语言快 B、C语言比FORTRAN语言快
C、C语言比FORTRAN语言和汇编语言都快 D、C语言比FORTRAN语言慢
3、对于char p[]="ABC\0ABCD\0ABCDE"; ,输出结果中能看到字符D的是():(1分)
A、printf("%s",p); B、printf("%s",p+4);
C、printf("%s",p+8); D、printf("%s",p+2);
4、下面关于字符串的说明中,错误的是();(1分)
A、char str[7]=”FORTRAN”; B、char *str=”FORTRAN”;
C、char str[]=”FORTRAN”; D、char str[]=‘F’,’O’,’R’,’T’,’R’,’A’,’N’;
5、若int a=5,b=6,c=7,d=8,m=2,n=2; 则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为():(1分)
A、0 B、1
C、2 D、3
6、已知:char i=’A’;float f=11.5;正确的语句是():(1分)
A、(int f)%i B、int(f)%i
C、int(f%i) D、(int)f%i
7、若int w=1, x=2, y=3, z=4;则条件表达式“w>x?w:y<z?y:z”的结果为();(1分)
A、4 B、3
C、2 D、1
8、C语言并不是非常严格的算法语言,在以下关于C语言的不严格的叙述中,错误的说法是():(1分)
A、有些不同类型的变量可以在一个表达式中运算 B、大写字母和小写字母的意义相同
C、在赋值表达式中赋值号(=)左边的变量和右边的值可以是不同类型 D、同一个运算符号在不同的场合可以有不同的含义
9、已知int a[]=1,2,3,4,5,6,7,8,9,*p = a; 则值为3的表达式是()(1分)
A、p+=2,*(p++) B、p+=2,*++p
C、p+=3,*p++ D、p+=2,++*p
10、以下不合法的表达式是():(1分)
A、x=y=200; B、5+(x=10);
C、5+x=10; D、y+x==10;
二、简答题(6道小题,共30分)
1、编写程序。从键盘输入100个数,将正数升序排列到数组的前端,把0放在中间,负数按降序排列在0的后面。
(10分)
2、写程序打印出以字符"*”组成的等腰三角形,行数为8,每行字符数分别为1、3、5、7、9、11、13和15的图案
(10分)
3、如果一个正整数等于其各个数字的立方和,则该数称为阿姆斯特朗数。如:407=43+03+73 就是一个阿姆斯特朗数。编程求1000以内的所有阿姆斯特朗数。
(10分)
4、写比较两个字符串 s 和 t 的函数strcmp(s, t)。要求s < t 时返回 -1,s = t时返回0,s > t时返回1。
(10分)
5、设有两个二进制文件,里面存放的是有序(从小到大)的整数,将这两个文件合并成一个仍然是有序的整数文件。
(10分)
6、编写程序,计算下面级数前n项中(n=50)奇数项的和,并输
出该级数最后两项之差的绝对值。
1*2*3+2*3*4+3*4*5+……+n*(n+1)*(n+2)+…
(10分)
三、编程题(6道小题,共60分)
1、写出C语言中的三种构造数据类型并举例写出其定义形式。
(5分)
2、静态变量有什么特点?
(5分)
3、写出函数的语法结构。
(5分)
4、C语言中为什么要对文件进行打开和关闭?
(5分)
5、举例写出C语言的四种存储类别。
(5分)
6、C语言标识符的命名规则是什么?请举例说明。
(5分
有没有更详细的啊?跪求。急!!!
1、编写程序。从键盘输入100个数,将正数升序排列到数组的前端,把0放在中间,负数按降序排列在0的后面。
#include"stdio.h"
void main()
int i,j,k,s,a[100],b[100]=0,m=0,n=0;
printf("input:");
for(i=0;i<100;i++)
scanf("%d",a[i]);
for(i=0,j=0;i<100;i++)
if(a[i]>0)b[j++]=a[i];m++;//m正数个数
for(i=0,j=99;i<100;i++)
if(a[i]<0)b[j--]=a[i]; n++;//n负数个数
for(i=0;i<m-1;i++)//正数排序
k=i
for(j=i+1;j<m;j++)
if(b[i]>b[j])k=j;
if(i!=k)
s=b[i];b[i]=b[k];b[k]=s;
for(i=100-n;i<99;i++)//负数排序
k=i
for(j=i+1;j<100;j--)
if(b[i]<b[j])k=j;
if(i!=k)
s=b[i];b[i]=b[k];b[k]=s;
for(i=0;i<100;i++)
printf("%d ",b[i]);
printf("\n")
参考技术B C语言是Combined Language(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发.
简单来讲。就是你使用的应用软件一类的东西。都可以使用C语言汇编。另外C语言还有VC,VC++,C++,C#高级编程语言。都是计算机汇编基础语言。大家使用的手机游戏一般都是JAVA编写,J语言比较简单易学,但是仍然替代不了C语言的基础地位。比如,计算机的声卡驱动一类的必须是用C语言编写。详细C语言的内容可以去百科查询一下,或买几本相关书籍看一下。 参考技术C 1.B 2.B 3.B 4.A 5.C 6.D 7.B 8.B 9.A 10.C
再加一个第一题代码:
#include <stdio.h>
#define LENGTH 100 /*数组长度*/
#define FORMAT 5 /*几行数字输入格式化*/
void sort_top(int data[],int il,int ir);/*正数升序*/
void sort_low(int data[],int il,int ir);/*负数降序*/
int main(void )
int i,il,ir;/*游标,il记录左侧位置,lr记录右侧位置,便于排序*/
int num,n;
int data[LENGTH]=0;/*记得初始化,0数字就正好不用处理了*/
printf("-->How many numbers will input:");
if((scanf(" %d",&n)!=1)||n>LENGTH)
puts("-->ERROR: scanf()!<--");/*错误检查*/
puts("-->Begin input:"); /*******************************Input***********************/
for(i=0,il=0,ir=n-1;i<n;i++)
scanf(" %d",&num);
if(num>0)
data[il++]=num;/*正数左*/
else if (num<0)
data[ir--]=num;/*负数右*/
/*0 自动存入了 */
sort_top(data,0,il-1);
sort_low(data,ir+1,n-1);
for(i=0;i<n;i++)
printf("%4d %c",data[i],(i+1)%FORMAT?' ':'\n');/*10 个数字一行*/
puts("\n--> End <--");
return 0;
void sort_top(int data[],int il,int ir)
int i,j;
int temp;
for(i=il;i<ir;i++)
for(j=i+1;j<=ir;j++)
if(*(data+i)>*(data+j))
temp=*(data+i);
*(data+i)=*(data+j);
*(data+j)=*(data+i);
void sort_low(int data[],int il,int ir)
int i,j;
int temp;
for(i=il;i<ir;i++)
for(j=i+1;j<=ir;j++)
if(*(data+i)<*(data+j))
temp=*(data+i);
*(data+i)=*(data+j);
*(data+j)=*(data+i);
参考技术D #include<stdio.h>
#include<math.h>
#define
Pi
3.14159265
void
main()
float
x,i=0,A=1,B=1,an=1,sum=1;//把Pi去掉,Pi已经定义为宏了
printf("请输入一个角度:");
scanf("%f",&x);
x=Pi/180*x;
while
(fabs(an)>=1e-6)
i=i+1;
A=(-1)*A*x*x;
B=B*2*i*(2*i-1);
//2*i
an=A/B;
sum=sum+an;
printf("cosx≈%.8f",x);
第5个回答 2010-04-14 1 A 2 D 5 A 6 A 8 B 9 B 10 C
(有时间再帮你做别的啊,你的第二题与第三题顺序不对吧:第二题是编程,第三题简答才对)
以上是关于C语言程序设计的主要内容,如果未能解决你的问题,请参考以下文章