c语言程序设计题函数题库 c语言程序设计操作题题库

c语言函数习题

1、 函数调用:strcat(strcpy(str1,str2),str3)的功能是________。

作为一家“创意+整合+营销”的成都网站建设机构,我们在业内良好的客户口碑。创新互联公司提供从前期的网站品牌分析策划、网站设计、成都做网站、网站建设、创意表现、网页制作、系统开发以及后续网站营销运营等一系列服务,帮助企业打造创新的互联网品牌经营模式与有效的网络营销方法,创造更大的价值。

C) 将串str2复制到串str1中后再将串str3连接到串str1之后

2、 若有以下调用语句,则正确的fun函数首部是

main()

{ ∶

int a;float x;

fun(x,a);

}

B) void fun(float a,int x)

3、 有如下程序

int func(int a,int b)

{ return(a+b); }

main()

{ int x=2,y=5,z=8,r;

r=func(func(x,y),z);

printf("%d\n",r); }

该程序的输出结果是__________。

D) 15

4、 函数pi的功能是根据以下近似公式求π值:

(π*π)/6=1+1/(2*2)+1/(3*3)+……+1/(n*n)

请你在下面程序中的划线部分填入________,完成求π的功能。

#include "math.h"

double pi(long n)

{ double s=0.0; long i;

for(i=1;i=n;i++) s=s+________;

return (sqrt(6*s)); }

A) 1.0/i/i

5、 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递

方式是________。

B) 单向值传递

6、 对于C语言的函数,下列叙述中正确的是________。

A) 函数的定义不能嵌套,但函数调用可以嵌套 (这答案有待斟酌)

7、 函数f的功能是:测定字符串的长度,空白处应填入________。

int f(char s[ ])

{ int i=0;

while(s[i]!='\0') i++;

return (________); }

main( )

{ printf("%d\n",f("goodbye!")); }

B) i

8、 若主调用函数类型为double,被调用函数定义中没有进行函数类型

说明,而return语句中的表达式类型为float型,则被调函数返回

值的类型是________。

C) double 型

9、 以下叙述中,错误的是________。

D) 形参可以是常量、变量或表达式

10、 以下叙述中,不正确的是________。

B) 在main函数体内定义的变量是全局变量

C语言程序设计题:用函数解决N阶方阵的加减乘,(1--加,2--减,3--乘,0--退出,其它--出错)

问题分为两步,

1界面设计,就如上面所说的

用getchar()获得一个输入,再编一个switch语句,然后写四个case语句加一个default。根据输入的字符调用不同函数。退出就是exit(0)。

2函数设计

(1)这里牵扯到n阶数组,可用一维数组的指针,动态申请内存长度,

比如int *p;p=(int)malloc(sizeof(int)*n*n);//申请n×n个int

然后一一赋值,在做加减乘的时候,加减比如好算,但乘的运算应该是p[i*n+j]=p1和第i行和p2的第j列分别相乘再相加的结果。比较复杂

还要考虑的问题是左边和右边两个数组的阶数是否一致

(2)程序的主要难度在于p1与p2两个数组相乘的算法,结果放在p中,则提供思路如下

for(int i=0;in;i++)

for(int j=0;jn;j++)

{

int sum=0;

for(int k=0;kn;k++)

for(int l=0;ln;l++)

sum+=p1(i*n+k)*p2(l*n+j);//把p1的第i行和p2的第j列相加

p[i*n+j]= sum ;

}

C语言程序设计试题

1. 一条简单语句是以_____;___字符作为结束符的,一条复合语句是分别以___{_____字符和_____}___字符作为开始符和结束符的。

2. 任何一个C++程序至少且只能包含一个_____主___函数,且程序总是从这个函数开始执行,不论这个函数的位置如何。一个函数定义由 函数头 和 函数体 两部分组成。

3. C++头文件和源程序文件的扩展名分别为 .h 和 .cpp。

4. cout与操作符___配合使用才能显示输出,cin与操作符__配合使用才能实现输入。

5. 数据类型int,char,bool,float,double, int * 等的类型长度分别为___4_、1_、_1_、_4、_8___和_____4___。

6. 数值常量46、0173和0x62对应的十进制值分别为_____46___、____123____和______98__。

7. 字符串”It\’s\40a\40C++programe!”中包含有______19____个字符。

8. 若x=5,y=10,则计算y*=++x表达式后,x和y的值分别为____6____和____60____。

9. 若x=25,则计算y=x--表达式后,x和y的值分别为____24____和__25______。

10. 假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)的值分别为___4_____和_____1___。

11. 假定x=64,y=88,则x2和y2的值分别为____128____和___44_____。

12. 假定x是一个逻辑量,则xtrue的值与_____x___的值相同,x||false的值也与_____x___的值相同。

13. 假定x是一个逻辑量,则x!x和x||!x的值分别为____0____和____1____。

14. 假定x=10,则表达式x=10?20:30的值为____20____。

15. 表达式sqrt(81)和pow(6,3)的值分别为________9______和_________216_____。

16. 数学算式(1+x)sin48°和axbex+1对应的算术表达式分别为___(1+x)*sin(48*3.14159/180)_____和_____a*pow(x,b)*exp(x+1)___。

17. 逻辑表达式:a=x||b2*y+10的相反式为:___~(a=x2*y+10)_____。

18. 在嵌套的if语句中,每个else关键字与它前面最接近的____if____关键字相配套。

19. 在for语句中,假定循环体被执行次数为n,则表达式1共被计算____n___次,表达式2共被计算____n____次,表达式3共被计算____n____次。

20. 执行for和while循环时,每次是先进行____条件____的判断,然后再执行____循环___,执行do循环时则相反。

另外,站长团上有产品团购,便宜有保证

C语言函数编程题

修改后的C语言程序:

#include stdio.h 

void triangle(int g)

{

int n=1, m; /* 修改处1 */

for(n;n=g; n++)

{

for(m=1;m=2*n-1;m++) /* 修改处2 */

putchar('*');

putchar('\n');

}

}

void rectangle(int g)

{

int n=1, m; /* 修改处3 */

for(n;n=g;n++)

{

for(m=1;m=3;m++) /* 修改处4 */

putchar('*');

putchar('\n');

}

}

int main()

{

int i,k;

printf("请输入行数(大于3):");

scanf("%d",i);

printf("请选择图形:1---三角形  \t2---矩形\t3---小旗 :");

scanf("%d",k);

if(k==1)

triangle(i);

}

if(k==2)

rectangle(i);

}

if(k==3)

triangle(i);

rectangle(i);

}

return 0;

}

《C语言程序设计》练习题

一、选择题

1、C语言规定,在一个源程序中,main()函数的位置(C )。

A) 必须在最开始 B)必须在最后

C) 可以任意 D) 必须在系统调用的库函数后面

这题你死记就行,你看看这个

任何一个C++程序都必须定义一个main函数,它的返回类型总是int类型。这个函数由操作系统来调用,在main函

数执行完以后,程序也就终止了。 main也可以使用return向操作系统返回一个值,使用操作系统的命令可以检测

main的返回值。一般约定在main返回0时,表示程序运行过程中没有出现错误,其它非零值表示程序出现异常情况。

若没有为main指定返回值,这样返回值是任意的。

2、若x和y都是int 型变量,x=100,y=200,且有以下程序段,printf(“%d”,(x,y));则其输出结果是( A)。

A) 200 B) 100 C) 100 200 D) 输出不确定值

(x,y)这是个逗号表达式,表达式的值为最后一个逗号后面表达式的值,因为前面有一个%d,所以输出 的是y的

3、合法的C语法字符常量是(C )。

A) “A” B) 65 C) ‘\t’ D) A

字符都是由两个单引号括起来的,死记, a)为字符串

4、表达式“3!=4”的值是(A )。

A) 1 B) 0 C) T D) F

!=是c语言的逻辑运算符,3!=4为真,多以得1, 3=4为假,值为0

5、 int a=1,b=2,c=3,d=4,执行下列程序后x的值为( C)。

if(ab) x=1;else if (cd) x=2;else x=3;

A) 1 B) 2 C) 3 D) 4

如果ab,12为假,不执行x=1,执行else if(cd),判断:34为假,不执行x=2,执行=3,完

6、以下程序的输出结果是(D)。

Int x=10,y=3,z;printf(“%d\n”,z=(x%y,x/y));

A)1 B) 0 C) 4 D) 3

逗号表达式,x%y,10%3,商3余1,模取余数1,x/y,10/3,商3余1,除法取商3,逗号表达式,表达式的值为最后一

个逗号后面表达式的值

7、为表示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)

关系运算符,x=y与y=z必须是同时成立的,因此要用逻辑运算符,与的意思

8、合法的数组定义是( a )。

A) int a[ ]=”string”; B) int a[5]={0,1,2,3,4,5};

C) char a=”string”; D) char a[ ]={“01234”};

a不指定数组长度定义,正确

b数组长度为5,就是里面有5个数组元素,多了一个数组元素

c定义a不是数组而是一个变量,素组应该是a[]

d是错的,字符串是这样定义的:char a[ ]={'0','1','2','3','4','\0'};

[4]中数字是数组长度,说明里面有几个元素

9、设x和y均为int型变量,则语句“x+=y;y=x-y;x-=y;”的功能是(D)。

A) 把x和y按从小到大排列 B)把x和y按从大到小排列

C)无确定结果 D)交换x和y中的值

x+=y等同于x=x+y,把x加y的值赋给x,x现在存的是x与y的和

y=x-y把x减y的值赋给y,x现在存的是x与y的和 (x+y)-y=x,把x的值给y,y存x的值

x-=y等同于x=x-y,把x减y的值赋给x,(x+y)-y=x,现在的后面的y存的是x的值,做完后x里存的值是y,完成交换

10、若已定义x和y为double类型,则表达式“x=1,y=x+3/2”的值是(C)。

A) 1 B)2 C) 2.0 D) 1.0

逗号表达式,先让x=1在算y=x+3/2,得2,因为是double类型,所以有小数点

11、下列条件语句中,功能与其他语句不同的是 (D)

A) if(a) printf("%d\n",x); else printf("%d\n",y);

B) if(a==0) printf("%d\n",y); else printf("%d\n",x);

C) if (a!=0) printf("%d\n",x); else printf("%d\n",y);

D) if(a==0) printf("%d\n",x); else printf("%d\n",y);

a 如果a为真输出x,如果a为假输出y

b 如果a==0,也就是为假,输出y,a为真输出x,同a

c 如果a!=0为真,输出x,a为假输出y同上

d 如果a为假输出x,如果a为真输出y,与以上的都不同

12、以下能正确定义二维数组的是 (C)

A) int a[][3]; B) int a[][3]=2{2*3};

C) int a[][3]={0}; D) int a[2][3]={{1},{2},{3,4}};

a 没有给数组赋初值

b {}里不能有*

c 正确,记住第一个[]中可以为空,第二个[]不能为空,死记

d a[2][3] 的意思是有两个一维数组,每个一维数组里有3个元素,{{1},{2},{3,4}}; 她的意思是三个数组,{}中的每一个{}代表一个数组,里边的数为数组元素

13、用C语言编写的代码程序 (B)

A)可立即执行 B)是一个源程序

C)经过编译即可执行 D)经过编译解释才能执行

死记

C语言程序设计考试题

main函数

scanf函数,printf函数

-60

6 ,4, 2

, || , !

B   66

2   1

6

main

5


新闻标题:c语言程序设计题函数题库 c语言程序设计操作题题库
本文URL:http://hbruida.cn/article/hjppcg.html