当前位置:首页 » 编程语言 » c语言程序设计测试

c语言程序设计测试

发布时间: 2022-12-17 20:41:36

c语言程序设计题

voidfun(intnumber,charstr[])
{

/**********Program**********/
inti=0;
while(number)
{
str[i++]=number%2+'0';
number/=10;
}
/**********End**********/

}

⑵ 《C语言程序设计》第10章在线测试

选择题中1、2、3、4分别对应A、B、C、D;

判断题中,1、2分别对应对、错;

《C语言程序设计》第10章在线测试

剩余时间:

59:58

答题须知:1、本卷满分20分。

          2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

          3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)

1、下列描述中,合法的数组定义是: 4

A、int a[]={"String"}; B、int a[5]={0,1,2,3,4,5};

C、char a={"String"}; D、char a[]={0,1,2,3,4,5};

2、一个C程序的执行是从( )。 1

A、main()函数开始,在main()函数中结束 B、第一个函数开始,直到最后一个函数结束

C、第一个语句开始,直到最后一个语句结束 D、main()函数开始,直到最后一个函数结束

3、下列说法中,错误的说法是( )。1

A、程序可以从任何非主函数开始执行 B、主函数可以调用任何非主函数的其他函数

C、任何非主函数可以调用其他任何非主函数 D、主函数可以分成两个部分:主函数说明部分和主函数体

4、若有定义int a[10]; ,则对数组a的引用正确的是( )。4

A、a[10] B、a[6.3]

C、a(6) D、a[10-10]

5、若有int a[][3]={{1,2},{3,4}}; ,则a[1][2]的值是( )。4?2?1

A、0 B、2

C、3 D、4

第二题、多项选择题(每题2分,5道题共10分)

1、下列对C语言字符数组的描述中,正确的描述是:123

A、字符数组可以存放字符串

B、字符数组中的字符串可以整体输入、输出

C、不可以用关系运算符对字符数组中的字符串进行比较

D、可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

2、根据定义: struct person{char name[9];int age;}; struct person c[10]={"John",17,"Paul",19,"Mary",18,"Adam",16}; 能打印出字母M的语句是:2?34

A、printf("%s",c[0].name);

B、printf("%s",c[1].name[0]);

C、printf("%s",c[2].name[1]);

D、printf("%s",c[3].name[2]);

3、下列描述中,合法的数组定义是:1234

A、char a[5]={’A’,’B’,’C’,’D’,’E’};

B、char a[]={’A’,’B’,’C’,’D’,’E’};

C、char a[]="ABCDE";

D、char a[]={65,66,67,68,69,70};

4、下列关于对二维数组a进行初始化的操作中,正确的写法是( )。134

A、int a[][3]={3,2,1,1,2,3};

B、int a[][]={{3,2,1},{1,2,3}};

C、int a[][3]={{3,2,1},{1,2,3}};

D、int a[2][3]={{3,2,1},{1,2,3}};

5、如果想使下列数组a中5个元素的值全部为0,可以写成( )。24

A、int a[5]={0:5};

B、int a[5]={0};

C、int a[5]={5:0};

D、int a[5]={0,0,0,0,0};

E、int a[5]=0;

第三题、判断题(每题1分,5道题共5分)

1、数组名的命名规则和变量名的命名规则相同1

正确 错误

2、若有func((v1,v2),(v3,v4,v5),v6)调用,说明函数func有6个形参。2

正确 错误

3、在说明一个结构体变量时系统分配给它的存储空间是该结构体中所有成员所需存储空间的总和。1

正确 错误

4、可以在定义数组时只给一部分数组元素赋值。1

正确 错误

5、对数组元素赋予的初值可以依次放在一对圆括号内。2

正确 错误

⑶ C语言程序设计(201803)测试求大佬帮忙!

  1. 选D

  2. 选C;"my name"算上空格一共7个字符,加上结尾的''为8个字符,所以如果m前没有空格,那么答案为C

  3. 选C;p指向a[3]=4的地址,即p及其之后地址中的数值为{4,5,6,7,8,9,10},所以其中第5个数为p[4]=8

  4. 选C

  5. 选D;A错误,字符串应为char型;B错误,数组长度不够;C错误,没有vhst类型;D正确,可看作字符数组,{}内的数值可转为相应的ASCII字符

  6. 选C;字符数组即字符串不能直接通过"="赋值,要使用strcpy函数

  7. 选C;函数实参可以是常量、变量或表达式,该题中逗号表达式(exp2,exp3)返回exp3,(exp4,exp5,exp6)返回exp6,因此一共3个实参

  8. 选C;A错误,函数调用时不用指明其参数类型;B错误,fun函数没有返回值,不能赋给k;C正确;D错误,函数调用时不用指明其返回类型

  9. 选A;n++表示先返回n的值,再对n进行自增操作,即先令k=n,再执行n=n+1

  10. 选C;if-else不是循环结构

  11. 选D;aa表示数组首地址,即&aa[0],而不是&aa[1]

  12. 选B

  13. 选B;a[2]=3,a[2]+1=4,所以a[a[2]+1]=a[4]=5

  14. 选C;A错误,除非函数定义在调用语句之后的位置,才需要提前声明;B错误,函数返回值不一定要显示给出,没有返回值类型的默认为整型;C正确;D错误,在类的定义中,当构造函数和析构函数不需要完成操作时可用空函数来表示,但它们又是有意义的

  15. 选B;scanf需指明读入变量的地址,字符串名称c就表示字符串的地址,也即字符数组首元素的地址,不用再加取地址符&

  16. 选A

  17. 选D;同第6题

码字不易,望采纳~

⑷ C语言程序设计的题目,满意后加分

#include <stdio.h>

int main(void)

{

int electric,money;

printf("请输入用电量:");

scanf("%d",&electric);

if(electric<=50)

{

money=electric*0.53;

}

else

{

money=50*0.53+(0.53+0.05)*(electric-50);

}

printf("电费:%d元 ",money);

return 0;

}

⑸ 《C语言程序设计》测试

好简单的题目呀!!
1.
#include <stdio.h>
void main()
{
float a[i],sum=0;
for(i=0;i<=9;i++)
{scnaf("%f",&a[i]);sum+=a[i];}
sum/=10;
printf("%f",sum);
}
2.
#include <stdio.h>
#include <math.h>
void main()
{
float s;
scanf("%f",&s);
s=fabs(s);
printf("%f",s);
}
3.
#include <stdio.h>
void main()
{
int i;
scanf("%d",&i);
if(i%3)printf("no\n");
else printf("yes\n");
}
4.
#include <stdio.h>
void main()
{
char i;
scnaf("%c",&i);
if(i>='A'&&i<='Z')i+=32;
printf("%c\n",i);
}
5.
#include <stdio.h>
void main()
{
int x,y,z,i,j;
for(x=1;x<100;x++)
for(y=1;y<100;y++)
{z=100-x-y;
if(z%3)continue;
j=x+y+z;
i=x*5+y*3+z/3;
if(i==100&&j==100)printf("%d,%d,%d",x,y,a)
}
}
6.
#include <stdio.h>
viod main()
{
int i,j,k=1,m,h;
scanf("%d",&h);
for(i=1;i<=h;i++)
{for(j=1;j<=h-i;j++)
printf(" ");
for(m=1;m<=k;m++)
printf("*");
k+=2;
printf("/n");
}
}
7.
#include <stdio.h>
#include <math.h>
void main()
{
int s1=100,s2,a,b,c;
for(;s1<=999;s1++)
{a=s1/100;
b=(s1-100*a)/10;
c=s1-100*a-10*b;
s2=pow(a,3)+pow(b,3)+pow(c,3);
if(s1==s2)
printf("%d ",s1);
}
printf("\n");
}
8.
#include <stdio.h>
void main()
{
int a[30],i,j=1;
for(i=0;i<30;i++)
{a[i]=j;
j+=2;
if(i%10==0)printf("\n);
printf("%2d ",a[i]);
}
printf("\n");
for(i=29;i>=0;i--)
{printf("%2d ",a[i]);if(i%10==0)
pirntf("\n");
}
}
9.
#include <stdio.h>
void main()
{
float x,y,z;
char i;
scanf("%f,%f,%c",&x,&y,&i);
switch(i)
{
case '+':z=x+y;break;
case '-':z=x-y;break;
case '*':z=x*y;break;
case '/':{if(y==0){printf("diving error\n");goto end;}
else z=x/y;}break;
default :{printf(error\n");goto end;}
}
printf("%f\n",z);
end:;
}

在这上面不好写,格式没有TOBER C上好看。
好久没自已做知道上的问题了。
呵呵,
可能有些打错的,你自已改下吧。

⑹ 《C语言程序设计》第17章在线测试

1、D 因为#define C(x) ((x)*(x))宏中需要使用完备的括号才不会有引用错误
2、D 认真区分char a[]和char *p的区别,a是数组的首地址,也是指针,但是p仅仅是指向一个字符串的首地址的指针,虽然也是指针,但是你并不知道p指针具体在什么代码段的什么位置,从而p+=2的位置你也无法确定。
3、C extern本来就是外部的意思嘛
4、A 仅仅在主函数中有效,这是对的。
5、B 局部变量优先,给你举个例子:
int a=1;
int main()
{
int a=2;
cout<<a;
return 0;
}
就是类似这样的例子,你在main函数外定义了一个全局变量a,在main内部又定义了一个变量名也是a的局部变量,那么你在main中用cout输出的时候就是输出了局部变量a的值,要输出全局变量a的值时则要使用::a,实际上是局部变量将全局变量屏蔽了,可以看做局部变量的优先于全局变量
/**********************************************************************************/
第二题1、ABC
2、ABD
3、CD
4、AB
5 、AD
/**********************************************************************************/
第三题
正确
错误,可改为int *p=&x
错误,不是指向结构体的指针,不可以用->
正确,因为数组名那可是一个指针,是数组的首地址
正确 当然可以递归了,网上多的是那种递归的小程序
如果有什么不清楚,咱们可以后续交流哦@—@

⑺ c语言编程怎么测试程序的对错

自己好好看看程序吧,别依靠编译器,编译器不是万能的!

1.语法错误
在编译前浏览程序的源代码看看是否有明显的错误。
可以查看由编译器发现的错误。

发现错误——从第一个开始修改,每次修改1~2个,然后重现编译。
发现的错误位置可能比真正的错误要滞后一行。

2.语义错误
比较程序实际得到的结果和预期结果。
跟踪程序,执行步骤——可用EXCEL(语句行×变量值)
在程序的几个关键点处加入额外的printf()语句以监视所选变量的值。
或用调试器。

⑻ 《C语言程序设计》第14章在线测试

一.
1.B 2.D 3.A 4.B 5.D
二.
1.BC 2.ABC 3.AB 4.CD 5.AB
三.
1.错误 2.正确 3.错误 4.正确 5.错误

⑼ 求解C语言程序设计题

完整的fun函数代码如下:

int fun(STU a[], int n, STU h[]) {

int i, k = 0;

double avg = 0;

for (i = 0; i < n; i++) {

a[i].sum = a[i].s1 * 0.7 + a[i].s2 * 0.3;

avg += a[i].sum; // 先计算总分

}

avg = avg / n; // 再计算平均分

for (i = 0; i < n; i++) {

if (a[i].sum > avg) { // 统计平均分以上的学生

strcpy(a[i].level, "均分以上");

h[k++] = a[i];

}

}

return k;

}

运行结果如下:

可见成功输出了平均分以上的学生信息,望采纳~

热点内容
更新成本算法 发布:2025-01-25 03:38:09 浏览:115
我的世界在服务器里面用toolbox 发布:2025-01-25 03:38:09 浏览:566
学编程不想学了 发布:2025-01-25 03:36:51 浏览:379
如何压缩0 发布:2025-01-25 03:36:49 浏览:794
服务器主板和家用电脑主板的区别 发布:2025-01-25 03:36:47 浏览:893
查询数据库连接数 发布:2025-01-25 03:36:41 浏览:976
安卓锁屏切换在哪里 发布:2025-01-25 03:30:56 浏览:220
aspx代码加密 发布:2025-01-25 03:28:09 浏览:925
安卓手机如何打开mdx 发布:2025-01-25 03:20:31 浏览:604
电脑易学编程 发布:2025-01-25 03:19:42 浏览:678