问题 填空题

给定程序中,函数fun()的功能是:使数组中的元素的值增加10倍。
改正其中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.
试题程序:
#include<stdio.h>
#include<conio.h>
iht m[10];
void fun(void)

int j;
printf("In subfunc after calling\n");
for(j=0;j<l0;j++)

/************found**********************/
printf("%3d",m[j]*l0);


main()
int i;
printf("In main before calling\n");
for (i=0; i<10; i++)

m[i]=i;
printf ("%3d",m[i]);

fun ();
printf("\nIn main after calling\n");
for (i=0; i<10; i++)
printf ("%3d",m[i]);
getch ();

答案

参考答案:错误:printf("%3d" m[j]*10); 正确:printf("%3d" m[j]=m[j]*10

解析: 本题考查全局变量相关知识。该题程序中的fun()没有参数输入,但数组m[10]为全局变量,故可在fun()函数中使用,fun()函数对数组m的操作可以反映到主函数的输出结果中。

名词解释
单项选择题