这问题我弄懂啊——任何函数调用不论有没有return都是返回主调函数的。所以在哪里调用的就必然会返回到哪里。迭代也不一定要有return语句,那要看代码结构的需要。不知你问的什么意思。
1.设x的值为15,n的值为2,则表达式x%n运算后,表达式的值为( )。
2.设 int a=7,b=9,t;执行完表达式t = (ab)a:b后,t的值是( )。
3.下面程序段的输出结果是( )。
int a=96; printf(“%d %c\n”,a,a);
4.a数组定义如下,按照内存排列顺序,a数组中的所有元素是( )。
char a[3];
5.设有以下宏定义,则执行赋值语句 a=PP20;(a为int型变量)后,a的值是( )。
#define PP 80
6.在C文件中,数据存在的两种代码形式是( )和( )。
7.C语言中调用( )函数打开文件,调用( )函数关闭文件,调用( )函数可实现文件的随机读写。
1.设 int a=12; 表达式a+=a-=a=a的值是( )。
A 12 B 144 C 0 D 132
2.以下程序的输出结果是( )。
main( )
{ int a=96;
printf(“%d\n”,++a);
}
A 96 B 97 C a D b
3.以下程序的输出结果是( )。
#define ADD(x) (x)+(x)
main()
{ int a=4,b=6,c=7,d=ADD(a+b)c;
printf(“d=%d”,d);
}
A d=70 B d=140 C d=280 D d=80
4下面的选项中正确的赋值语句是(char a[5],p=a;)( )。
A p=“abcd”; B a=“abcd”; C p=“abcd”; D a=“abcd”;
5.若k为整形,则while循环执行( )次。
k=2; while(k==0) printf(“%d”,k); k--; printf(“\n”);
A 10 B 9 C 0 D 1
6.数组名作为实参传递给形参时,数组名被处理为该数组的( )。
A长度 B元素个数 C首地址 D各元素的值
7.两个指针变量不可以( )。
A 相加 B 比较 C 相减 D 指向同一地址
8.若有以下程序段,则值为6的表达式是( )。
struct st{ int n;struct st next;};
static struct st a[3]={5,a[1],7,a[2],9,‘\0’},p; p=a[0];
A p++-n B p-n++ C (p)n++ D ++p-n
9.要打开一个已存在的非空文件”file”用于修改,选择正确的语句( )。
A fp=fopen("file","r"); B fp=fopen("file","w");
C fp=fopen("file","r+"); D fp=fopen("file","w+");
10 9.若有int a[3]={10,12,30};则a+1是( )。
A a[0]的地址 B a[1]的地址 C a[1]的值 D a[0]的值加1
写出下列程序的运行结果:
1.main( )
{ int a[6]={10,6,23,-90,0,3},i;
for(i=0;i6;i++) printf(“%d,”,a[i]);
printf(“\n”);
}
2.f1(int a)
{ int b=0; static int c=3;
b+=1; c++;
return(a+b+c);
}
main()
{ int a=1,i;
for(i=0;i3;i++) printf("%d ",f1(a)); }
在 处填入适当内容:
一个函数中可以有多个return,但是函数在运行时只能有一个return生效。return返回的类型必须是函数的类型。
如下列函数在a大于0时返回1,等于0时返回0,小于0时返回-1。函数test的类型是int,所以return的数字必须是int型。函数中根据参数a的不同,分别有3个return,但每次执行只能有一个return被执行。
int test(int a)
{
if(a>0)
return 1;
else if(a==0)
return 0;
else if(a<0)
return -1;
}
按照C语言对main函数的定义,return语句是必须存在的。因为正宗的main函数定义返回int型值,即是int
main(结构(早期平台不写int时默认为int),并不是void
main(这种结构,所以正确的写应该是int
main(){return
x;}(x是有规定的几个int型常量或变量)。不过,后来的一些编译器认可void
main(这种结构,在这种编译器中就不得有最后的return语句了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)