c语言设计函数练习 c 语言设计

《C语言程序设计》练习题一、选择题
1、C语言规定 , 在一个源程序中,main()函数的位置(C ) 。
A) 必须在最开始 B)必须在最后
C) 可以任意 D) 必须在系统调用的库函数后面
这题c语言设计函数练习你死记就行,c语言设计函数练习你看看这个
任何一个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、表达式“3c语言设计函数练习?。?”的值是(A ) 。
A) 1 B) 0 C) T D) F
!=是c语言的逻辑运算符 , 3c语言设计函数练习?。?为真,多以得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 如果ac语言设计函数练习!=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语言程序设计函数问题(a) 。C---A中语句结束没有分号,B中参数分割用了分号,应该是逗号隔开 , D中y没有类型
2. B---A中地址传递应该用指针或数组名,这个是双向值传递 。
3. 应该是B吧,函数内部不能嵌套定义函数 。但是函数可以嵌套调用
4.D循环中c是静态变量,存储在全局区域 , b是局部变量存在栈区 , 在第一次I=0时,a b c=7(2 1 4)返回7后,函数f(int a)调用退出 , 静态数据c仍为4而b由于函数的返回而数据丢失
进入第二次循环I=1时 , 所以a b c就是2 1 5=8,同理3
5.15开始调用sub(5),由于i=5 , 所以执行a=n sub(n-1)=5 sub(4),这时又调用sub(4),执行else后语句为a=5 (n sub(n-1))=5 4 sub(3) , 依次类推直到n=1 , 就是5 4 3 2 1=15
6 。在哪里填空?怎么在函数gongyue(int,int)中还有主函数中得a,b变量啊,搞错了吧!题目在写下看看~
C语言设计函数和调用函数的题目#include stdio.h
#define STUDENTNUM 10
/* 由于学号只有9个数字,一个long型的整数就可以表示 */
/* 成绩只是0~100之间,一个char就可以表示了 */
struct student
{
long xh;
char dxyy;
char cyycxsj;
char jsjdl;
【c语言设计函数练习 c 语言设计】} students[STUDENTNUM];
int ResearchStu(long xh);
/* 从文件读取学生成绩,如果文件不存在,需要手工输入成绩 */
/*成绩数值必须在0~100之间 。*/
void init()
{
int i, tmp, err;
FILE * fp = fopen("cj.dat", "rb");
if(fp) fread(students, STUDENTNUM, sizeof(struct student), fp);
else
{
for(i=0; iSTUDENTNUM; i)
{
err = 0;
printf("请输入学号:");
scanf("%ld", students[i].xh);
printf("请输入大学英语成绩:");
scanf("%d", tmp);
if(0 = tmptmp = 100) students[i].dxyy = (char)tmp;
else err = 1;
printf("请输入C语言程序设计成绩:");
scanf("%d", tmp);
if(0 = tmptmp = 100) students[i].cyycxsj = (char)tmp;
else err = 1;
printf("请输入计算机导论成绩:");
scanf("%d", tmp);
if(0 = tmptmp = 100) students[i].cyycxsj = (char)tmp;
else err = 1;
if(err)
{
printf("成绩输入错误,需要重新输入!\n");
i--;
}
}
}
}
void main()
{
long xh, pos;
init();
scanf("%ld", xh);
pos = ResearchStu(xh);
if(pos == -1) printf("查无此人!");
else
{
printf("%d\t大学英语\t%d分\n", students[pos].xh, students[pos].dxyy);
printf("%d\tC语言程序设计\t%d分\n", students[pos].xh, students[pos].cyycxsj);
printf("%d\t计算机导论\t%d分\n", students[pos].xh, students[pos].jsjdl);
}
}
int ResearchStu(long xh)
{
int i;
for(i=0; iSTUDENTNUM; i) if(students[i].xh == xh) return i;
return -1;
}
c语言,程序设计题,如图?c 语言程序设计练习题 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语言程序设计,函数与指针 , 帮忙编写几道题1请编写函数fun,其功能是计算并输出n门课程的平均值,并统计在平均值以上的课程个数,该个数作为函数值返回 。
int fun(float a[],int n)
{
double sum = 0.0;
double ave = 0.0;
int count = 0;
for(int i = 0;in;i)
sum= a[i];
ave = sum/n;
for(int i = 0;in;i)
if(a[i] = ave)
count;
return count;
}
2请编写函数fun,其功能是:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些
void fun(int m,int *a,int *n)
{
*n = 0;
for(int i = 1;i = m;i)
{
if(i%7 == 0i == 0)
{
a[*n] = i;
(*n);
}
}
}
3编写函数fun,统计在tt所指字符串中a到z这26个小写字母各自出现的次数,并依次存放在pp所指的数组中.
void fun(char *tt,int pp[])
{
for(int i = 0;i26;i)
pp[i] = 0;
for(int i = 0;istrlen(tt);i)
{
pp[tt[i] - 'a'];
}
}
4.请编写函数fun,其功能是:将ss所指字符串中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换).
void fun(char *ss)
{
for(int i = 1;istrlen(ss);i =2)
{
if(ss[i] = 'z'ss[i] ='a')
{
ss[i]= 'A' - 'a';
}
}
}
5请编写函数fun,用来删除字符串中的所有空格.
void fun(char *str)
{
int count = 0;
for(int i = 0;istrlen(str);i)
{
if(str[i] != ' ')
{
str[count] = str[i];
count;
}
else
{
str[count] = 0;
}
}
}
c语言设计函数练习的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于c 语言设计、c语言设计函数练习的信息别忘了在本站进行查找喔 。

    推荐阅读